Angular 重复跟踪

Angular duplicates track by

我有这个灵感:

http://plnkr.co/edit/7X8VMG?p=preview

当我通过单击 "Uncompleted" 进行过滤时,我在转发器中收到重复错误

 Duplicates in a repeater are not allowed. Use 'track by' expression to specify unique keys. Repeater: node in nodes track by node.id, Duplicate key: 1441, Duplicate value: {"name":"1","id":1441,"created_at":...

但是如果您查看代码,只有一个 ID 为 1441 的节点。我试图通过选项将其他轨道放在那里,但没有任何效果。

//更新信息: 由于嵌套结构

,按 $index 跟踪不起作用

如何解决?

非常感谢!

大卫

track by $index

应该可以解决问题,即使是嵌套结构,因为 $index 将引用最内层 ngRepeat 范围内的索引。

这将导致项目通过它们在数组中的位置而不是它们的值来键入

setFilterOptions 函数中有一个错误,使用相同的代码有更多的状态,然后它更频繁地将节点推送到结果数组。

修复
if($scope.current_visibility.since === null) {
    $scope.filters.tasks.statuses = angular.copy($scope.active_statusses);
    $scope.filters.tasks.statuses.push($scope.folder_status);
}

感谢帮助