Angularjs 对象数组上的内联重复
我试图用对象数组编写一个Angularjs 对象数组上的内联重复,angularjs,angularjs-ng-repeat,Angularjs,Angularjs Ng Repeat,我试图用对象数组编写一个ng repeat,在ng repeat属性中定义数组,但出于某种原因,它只是无限期地重复输出。 我把它归结为与最后一部分有关的问题;在线操作 <span ng-repeat="item in [{test:'a'}, {test:'b'}, {test:'c'}]">{{item.test}}</span> {{item.test} 控制台中出现了一堆错误:[$rootScope:infdig]错误。 有趣的是,尽管我运行的是1.2,但无论
ng repeat
,在ng repeat属性中定义数组,但出于某种原因,它只是无限期地重复输出。我把它归结为与最后一部分有关的问题;在线操作
<span ng-repeat="item in [{test:'a'}, {test:'b'}, {test:'c'}]">{{item.test}}</span>
{{item.test}
控制台中出现了一堆错误:[$rootScope:infdig]
错误。有趣的是,尽管我运行的是1.2,但无论我选择哪个角度版本,它都能很好地渲染它 但是JSFIDLE中的控制台仍然充斥着错误
Error:[$rootScope:infdig]10$digest()迭代。流产代码>,不仅对对象数组执行此操作,而且对数组数组执行此操作(test5)
我尝试了一个变通方法,即在那把小提琴中的test5,保存var,这真的很有趣,因为如果你注释掉ng repeat,没有错误。
然而,当您尝试使用该变量时。这很有趣,因为这本质上就是test3,它可以顺利运行
所以我想做的一件事一定是有问题的,那就是拥有(而不是预先存在于js中)。因此,为了杀死摘要循环,我尝试将fiddle切换到v1.4以使用和(控制台错误)
其他人,但在他们自己的库中修复了它,而不是向上游报告
有什么方法可以让它正常工作吗?看看这段代码
<!--what I actually want to work-->
<span ng-init="test10 = [{'text':'but'}, {'text':'this'}, {'text':'refuses'}, {'text':'to'}, {'text':'work'}]"></span>
<span ng-repeat="item in test10">{{item.text}} </span>
{{item.text}
使用ng init,可以从视图中设置范围变量
希望有帮助 您是否在ng repeat
中调用$evalAsync()
或类似函数?否。小提琴就在那里,你只需要看到问题开始时的代码片段就可以了。它在fiddle中显示“right”的唯一原因是因为摘要深度被限制了,所以它在第一次迭代后就出错了。我真不敢相信我忘记了init,这太棒了。谢谢糟糕的是,你不能把nginit
放在同一个div中,但至少我可以让它更干净一点,因为它允许每个init有多个声明