Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 具有静态值的指令_Javascript_Angularjs_Performance_Angularjs Directive - Fatal编程技术网

Javascript 具有静态值的指令

Javascript 具有静态值的指令,javascript,angularjs,performance,angularjs-directive,Javascript,Angularjs,Performance,Angularjs Directive,如果我使用带有静态值的AngularJS指令,那么假设: <input type="text" ng-readonly="true" /> 我的问题是: 是否会在AngularJS循环中重新评估该指令,导致性能下降?(考虑一个更重的场景)是否会在AngularJS循环中重新评估该指令: 是的,ng readonly的值是一个,并且这个表达式可能是一个更复杂的三元或函数引用。因此,指令必须对其进行脏检查(对于更复杂的情况) 导致性能下降 这取决于许多因素,在做出假设之前,应该进行

如果我使用带有静态值的AngularJS指令,那么假设:

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

我的问题是:


是否会在AngularJS循环中重新评估该指令,导致性能下降?(考虑一个更重的场景)

是否会在AngularJS循环中重新评估该指令

是的,
ng readonly
的值是一个,并且这个表达式可能是一个更复杂的三元或函数引用。因此,指令必须对其进行脏检查(对于更复杂的情况)

导致性能下降

这取决于许多因素,在做出假设之前,应该进行测试和基准测试。大量脏检查可以在没有任何明显性能下降的情况下进行

从Angular 1.3开始,您可以使用语法(
)来可能不向监视队列添加值,但我不确定如何使用
true

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

解决方案可能是在父指令上绑定一次。2014年,NG Conf在youtube上发布了关于这一点以及如何不受这样的性能冲击的文章。我希望这有帮助。