ng-repeat
在我看来,我有以下几点:
<div ng-repeat="field in fields">
{{field.someValue}}
</div>
的内容fields
需要在将preprocessed
其提供给视图之前。所以在我的控制器中,我有一个函数循环遍历fields
对象并添加一些键并删除一些键。简化的伪代码看起来像这样
myApp.controller('FieldsController', function($scope) {
$scope.fields = loadFieldsFromResource();
var i=0;
for(i = 0; i < $scope.fields.length; i++) {
if ($scope.fields[i].someProperty > maxValue) {
// Remove an item from the array
$scope.fields.splice(i,1);
}
else if ($scope.fields[i].someProperty < minValue) {
// Add an item to the array
$scope.fields.splice(i,0,createNewField());
}
}
})
现在这产生了正确的输出,但给了我10 $digest() iterations reached.
错误。我怎样才能让它工作?(我只需要在 init 上完成预处理)。
我试图将fields
with复制angular.copy()
到一个临时变量。对其进行预处理,然后将其分配给fields
变量,但仍然出现相同的错误。
preprocessing
在我把它交给视图之前,有没有办法在 Angular 手表之外做这种事情?