我正在优化我的大型应用程序。我对以下两种方法感到困惑,请帮助确定哪一种更快。
内联样式属性
<div style="background-color:{{item.color}}"></div>
使用ng-style
<div ng-style="{'background-color':item.color}"></div>
使用一次式
<div once-style="{'background-color':item.color}"></div>
注意:对于once-style
,我使用了AngularOnce指令。
提前致谢。请告诉我哪一个更快,为什么。
答案 0 :(得分:29)
在Angular 1.3之后可以进行一次绑定。
您可以这样做而不依赖第三方库:
<div ng-style="::{'background-color': item.color}"></div>
我没有衡量表现,但我很确定它比没有冒号更好。
答案 1 :(得分:12)
由于您正在优化相当大的应用程序,因此性能肯定存在问题,我认为ngStyle
在模型上设置监视时表现更好,并且仅在模型发生更改时才更新视图。
所以我会根据您的情况选择ngStyle
或onceStyle
:
<div once-style="{'background-color':item.color}"></div>
使用{{}}
将使Angular更新每个摘要周期的绑定,即使该值未发生更改。