这是我的HTML
<div ng-app="person" ng-controller="names">
<div ng-repeat="id in ids">
{{id}}
</div>
</div>
这是我的剧本
var persons=angular.module("person",[]);
persons.controller("names",function($scope){
$scope.ids=['vicky','a','c','svicky'];
});
这可以正常工作working fiddle
但是当我将最后一个元素从'svicky'更改为'vicky'时它无法正常工作
为什么会这样?
答案 0 :(得分:6)
按控制台告诉您的$ index使用track。 Fiddle
<div ng-app="person" ng-controller="names">
<div ng-repeat="id in ids track by $index">
{{id}}
</div>
</div>
这是您在控制台中应该看到的错误:
错误:[ngRepeat:dupes]不允许在转发器中重复。使用 '追踪'