<div ng-repeat="app in fields track by $index">
<span class="{{app.icon}}"></span>
<span ng-class="app.icon"></span>
</div>
var originalFields = [
{title: 'Text Field', icon: 'fa-pencil'},
{title: 'Multiple Choice'}
];
这些类第一次正常工作
当我使用像$scope.fields = angular.copy(originalFields);
然后它有时有效,但有时无法工作class="app.icon"
而不是class="fa-edit"
我甚至尝试在复制后使用$scope.$apply();
,但它不起作用
app.icon = "fa-edit"
我做错了什么?
答案 0 :(得分:0)
<div ng-repeat="app in fields">
<span class="{{app.icon}}"></span>
<span ng-class="app.icon"></span>
</div>
我删除了track by $index
它工作正常。
当第一个元素被删除时,它会在使用track by $index
时复制第二个元素的属性,我的第一个元素图标属性被第二个元素覆盖。第二个元素没有icon
属性。
奇怪!!