1

我是angular js的新手。 ng-repeat指令迭代模型,一旦模型发生变化(添加/删除值),ng-repeat指令就会自行更新。

如果这是真的,那么它将强制在浏览器中对模型对象中的所有值进行重绘和重排操作,从性能的角度来看,这是一个代价高昂的操作。

4

1 回答 1

0

这一切都取决于所涉及的变量的数量,因此也取决于观察者的数量。

通常,拥有 10k 观察者应该没问题。我会非常谨慎地去任何超过 10k 的观察者,因为你可能会遇到一些麻烦(是的,你的机器运行 chrome >= 40很好,但你的 IE9 用户不会)。

但是,您可以通过使用 bindonce(您可以在此处遵循这个精彩的指南)或其他一些策略(例如,通过将您的视图包装在一个独特的容器中来使用更少的 ng-if)来减少您的视图的观察者总数。

于 2016-08-17T11:20:33.307 回答