【发布时间】:2014-06-18 07:31:20
【问题描述】:
这是一个解释问题的 JSFiddle 示例:
注意在数据中
$scope.places = [{
name: 'Chicago',
status: 'Active',
analyst: 'Sam',
recorder: 'Nate' //this can have a value or be null
}, .... more data...];
有时我将记录器设置为空,有时设置为空字符串
我觉得奇怪的是,当我在记录器上进行排序时,空值消失并且在我清除过滤字段时再也不会出现。
表中的行被永久删除。这是为什么?当数据库没有记录器名称时,我能够通过确保 java 生成空字符串而不是 null 来解决实际应用程序中的问题,但我不明白为什么它一开始就是一个问题。
我在想这与赋予已删除元素的哈希值有关,而 null 不能有哈希?我认为 Angular 能够以某种方式弥补这一点,但也许不会。
另一种解决方案是仅使用 ng-hide 并以这种方式编写自定义过滤器。 ng-hide 只是在 css 中添加一个 display:none 并将元素留在 DOM 中。
【问题讨论】:
标签: javascript arrays html angularjs