我有一个带有html的对象数组= [1,2,3,4,5]。在数组值的条件下更新ng-repeat内部的正确方法是什么?我举一个例子:
<ul>
<li ng-repeat="nr in array">
<p> {{ nr}} </p>
<ul>
<li ng-repeat="stuff in stuffs(nr)"> {{stuff}} </li>
</ul>
</li>
</ul>
我试图在控制器中创建一个范围函数:
scope.stuffs = function(ret){
......
return arrayConditionedbyNr;
}
但是引发了错误:
未捕获错误:达到10 $ digest()次迭代。中止! 观察者在最近5次迭代中被解雇:......
你能指导我正确的方向吗?答案 0 :(得分:0)
也许我错过了你的问题..但是这个跟随的plunker适合我 http://plnkr.co/edit/iCepagIKA1OFDjBnB35I?p=preview
也许你需要<div ng-repeat="test in getArr(item.id) track by $index">
答案 1 :(得分:0)
这是我的HTML:
<h2> Last Updates </h2>
<ul>
<li ng-repeat="cat in eachCateg">
<h3> {{cat}} </h3>
<ul>
<li ng-repeat="game in eachGame(cat)">
<p>{{game.id}}</p>
</li> -->
</ul>
</li>
</ul>
这是我的控制者:
applicaton.controller('homeController', ['$scope','$http','$stateParams','$q',function(scope,http,stateParams,q){
// server request with http angular.js, taking category list from JSON for scope.eachCateg
var getCategories = http.get('data/menu/menu.json')
.success(function(result){
scope.eachCateg = result.categories;
});
scope.eachGame = function(categ) {
var httpRequest = http.get('data/games/'+ angular.lowercase(categ)+'/urlThumb.json')
.success(function(result){
return result;
})
return q.all([httpRequest]).then(function(result){
return result[0].data;
})
}
}]);
所以这是我尝试更新列表的方式,我得到了这个错误。似乎它给了我一个承诺而不是实际的数据。我怎么能发送给我作为回报所需的数据?