AngularJS:未捕获错误:已达到[$rootScope:infdig]10$digest()迭代

AngularJS: Uncaught Error: [$rootScope:infdig] 10 $digest() iterations reached

本文关键字:rootScope infdig 迭代 digest 错误 AngularJS      更新时间:2023-09-26

我有一个嵌套数组,正在页面上重复。通过查看页面,我想在屏幕上显示的所有内容都被呈现出来了,但在控制台中我得到了错误:

Uncaught Error: [$rootScope:infdig] 10 $digest() iterations reached. Aborting!

我假设这个错误是由于嵌套数组的数量造成的,因为一旦我缩小了嵌套数组的大小,错误就不会出现。

这是一个模拟我的情况的小提琴

所以我终于解决了这个问题。我最终做的是在我的项目中添加一个名为RecursionHelper的库,并将其作为依赖项注入。

这是原始帖子的链接。谢谢

这是一个已知的AngularJS问题。AngularJS本身防止多次迭代以避免无限循环。

有一种可能的解决方法,但它可能会损害代码的其他部分:

$rootScopeProvider.digestTtl(15);

这将十次迭代的限制更改为十五次或您想要的任何次数

http://jsfiddle.net/NP7P5/33/