我想了解下面代码变化在复杂性不断增加时的性能影响。其中一部分答案(使用属性)已经在AngularJS : Why ng-bind is better than {{}} in angular?中得到解决,但我想了解使用函数而非属性的影响。
对于使用属性,似乎Angular在某种程度上“知道”何时发生更改,而函数是不透明的,因此Angular不会知道,并且必须每次进行评估。然而,根据上述SO问题,Angular无论如何都会进行直接模板化的评估。那么相比属性,使用函数是否真的会有性能损失?它们各自的优缺点是什么?
1.使用属性的直接模板
<div>Hello, {{user.name}}</div>
2 ng-bind-template 与属性一起使用
<div ng-bind-template="Hello, {{user.name}}"</div>
使用属性的3 ng-bind
<div>Hello, <span ng-bind="user.name"></span></div>
4. 使用函数进行直接模板化
<div>Hello, {{GetUserName()}}</div>
使用函数的5 ng-bind-template
<div ng-bind-template="Hello, {{GetUserName()}}"</div>
使用函数的6个ng-bind
<div>Hello, <span ng-bind="GetUserName()"></span></div>