gpt4 book ai didi

javascript - "10 $digest() iterations reached. Aborting!"由于使用 angularjs 进行过滤

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:26:21 26 4
gpt4 key购买 nike

请看以下内容:

https://dl.dropbox.com/u/4571/musicopeTypescript/musicopeTypescript/index.html

当您在输入框中键入“a”时,您将获得 10 $digest() 迭代次数。正在中止! 错误。

你知道为什么会这样吗?

编辑:这是产生问题的代码:

http://embed.plnkr.co/PTkvPc

编辑: 看起来是 Song.clone 的问题。如果我用 angular.copy 替换它,那么它就可以工作。谁能解释一下?

这是工作版本:

http://plnkr.co/edit/8Jk1pR?p=preview

最佳答案

您的过滤器是否以某种方式修改了原始数据?这是唯一看起来会导致无限摘要循环的特定事物。

编辑:关于不同的克隆功能导致不同的行为。

我怀疑一个在进行深度克隆,另一个没有,在一种情况下,AngularJS 正在检查对象是否相等,而您的过滤器每次都在创建新对象,从而导致了问题。

我建议分解一些逻辑,或许将其中一些移到 Controller 或其他过滤器中。缩小数组范围的过滤器应该只这样做,并且只返回对原始对象的引用。然后你可以编写其他过滤器来操作标签等。

也为 Abba +1。 :P

关于javascript - "10 $digest() iterations reached. Aborting!"由于使用 angularjs 进行过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13277542/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com