具有静态价值的指令

时间:2015-02-09 16:33:58

标签: javascript angularjs performance angularjs-directive

如果我使用带有静态值的AngularJS指令,请说:

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

围绕这个我的问题:

是否会在AngularJS循环中重新评估此指令导致性能下降? (想想更重的情况)

1 个答案:

答案 0 :(得分:1)

Will this directive be re-evaluated on AngularJS cycles

是的,ng-readonly的值是Angular Expression,此表达式可以是更复杂的三元或函数引用。因此,指令必须对它进行脏检查(对于更复杂的情况)。

leading to a drop on performance

这取决于很多事情,应该在做出假设之前进行测试和基准测试。脏检查的批次可以在没有任何明显性能下降的情况下发生。

从Angular 1.3开始,您可以使用bind-once语法(::)可能不会将值添加到监视队列,但我不确定这将如何用于{ {1}}:

true