Javascript 绑定到深度嵌套对象属性时的Angularjs性能

Javascript 绑定到深度嵌套对象属性时的Angularjs性能,javascript,performance,angularjs,data-binding,Javascript,Performance,Angularjs,Data Binding,在Angularjs中进行数据绑定时,两者之间是否存在性能差异(显著或其他) {{bar} 及 {{foo.bar} 那{{foo.bar.baz.qux}呢 上下文:我所在的团队正在构建一个大型Angularjs应用程序,该应用程序可能会有大量数据流过,如果有,我们希望避免性能受到影响。据我所知,重新评估在摘要中进行。 Angular遍历范围中的所有值,并检查值是否已更改 看起来深嵌套并不会带来很多麻烦,因为它只是重新检查视图中使用的值。(只要你不在这个深嵌套对象上放置观察者) 但有一些提示:

在Angularjs中进行数据绑定时,两者之间是否存在性能差异(显著或其他)

{{bar}

{{foo.bar}

{{foo.bar.baz.qux}


上下文:我所在的团队正在构建一个大型Angularjs应用程序,该应用程序可能会有大量数据流过,如果有,我们希望避免性能受到影响。

据我所知,重新评估在
摘要中进行。
Angular遍历范围中的所有值,并检查值是否已更改

看起来深嵌套并不会带来很多麻烦,因为它只是重新检查视图中使用的值。(只要你不在这个深嵌套对象上放置观察者)

但有一些提示

不要对视图中的条件使用方法:

<span data-ng-hide="someFunction()"></span>
每个
摘要
都将重新计算过滤器,而指令在传递的值上有一个监视程序,并且只有在该代码确实发生更改时才重新计算

如果
使用
数据ng,而不是
显示/隐藏
(由于
数据ng如果可用):

ng Show/Hide
只使用
display:none使DOM元素消失与css。
即使隐藏的DOM元素不可见,也会对其进行计算并更改数据


ng if
将完全删除DOM元素,无需重新评估
ng if

中的内容Brian Ford对AngularJS进行了一次有趣的讨论,其中包含大量数据:
<span>{{'WELCOME'|translate}}</span>
<span data-translate="'WELCOME'"></span>