我有两个对象集合。其中一个对象具有原始值,另一个对象具有对象值。

我需要在具有动态列的html表中呈现集合。我为此做了一个过滤器,但是它适用于使用原始对象值进行收集,并且会导致无限的$ digest循环(请参阅控制台)进行对象的收集。

这是一个JSBin

我知道问题在于每次由于angular.copy返回一个新对象。但是,为什么它能达到原始价值呢?

有什么想法可以解决这个问题吗?

最佳答案

它对基元起作用的原因是JS通过值而不是通过引用传递基元。可以使用lodash的(_库)备忘录功能解决该问题。 This page使用备忘录详细说明确切的问题和解决方案。

关于javascript - 数组过滤器导致无限的$ digest循环,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29106509/

10-09 22:11