如何使用ng-repeat循环执行函数返回的项目?我想重复创建div,这些项是函数返回的对象。但是,以下代码报告错误:达到10 $ digest()迭代。中止!jsfiddle在这里:http://jsfiddle.net/BraveOstrich/awnqm/<body ng-app>
<div ng-repeat="entity in getEntities()">
Hello {{entity.id}}! </div></body>
3 回答
慕的地10843
TA贡献1785条经验 获得超8个赞
这是在这里报道并得到这样的回应:
您的getter不是幂等的并且更改模型(通过每次调用时生成一个新数组)。这迫使角度继续调用它,希望模型最终会稳定,但它从未这样做角度放弃并抛出异常。
getter返回的值相等但不相同,这就是问题所在。
如果将阵列移动到主控制器外,您可以看到此行为消失:
var array = [{id:'angularjs'}];function Main($scope) { $scope.getEntities = function(){return array;};};
因为现在它每次都返回相同的对象。您可能需要重新构建模型以使用范围上的属性而不是函数:
我们通过将控制器方法的结果分配给属性来解决这个问题,然后执行ng:重复它。
- 3 回答
- 0 关注
- 708 浏览
添加回答
举报
0/150
提交
取消