2015-02-09 36 views
2

如果我使用AngularJS指令與靜態值,讓我們說:指令與靜態值

<input type="text" ng-readonly="true" /> 

我解決此問題:

將這個指令可以在AngularJS週期導致重新評估性能下降? (認爲​​在較重的情況下)

+0

一個解決方案可能會在父指令上綁定一次。 2014 NG-Conf [視頻](https://www.youtube.com/watch?v=zyYpHIOrk_Y),以及如何避免這樣的表現。我希望這有幫助。 – Jdahern 2015-02-09 17:31:05

回答

1

Will this directive be re-evaluated on AngularJS cycles

是的,ng-readonly值是Angular Expression和該表達式可能是更復雜的三元或功能參考。因此,指令必須對它進行髒檢查(對於更復雜的情況)。

leading to a drop on performance

這取決於很多因素,使之前的假設應該測試和基準。 A lot髒檢查可能會發生沒有任何明顯的性能下降。

由於角1.3,你可以使用bind-once語法(::)到可能不是值添加到監視隊列中,但我不知道怎麼這將與true工作:

<input type="text" ng-readonly="::true" />