构建一个非常大的角度应用时,我遇到了一个性能问题。我所有的组件和视图都在很大程度上取决于数据绑定,到处都有NG重复。因此,我决定通过添加{{::scopevariableName}}
来删除所有两种数据指标,因为现在没有两个方法数据绑定我的问题是如果控制器中的模态值更改,则视图更新会更新吗?
function myCtr(){
var that=this;
this.scopevariableName='hannad'
this.someFunction=function(){
someEvent(function(callbackData){
if(callbackData){
that.scopevariableName='new value for scope variable'
}
});
}
}
<p ng-bind="::$ctrl.somevariableName"></p>
来自文档:一次性表达 一旦稳定,将停止重新计算,这发生在 如果表达式结果为未定义的值,则第一个摘要。
我对一次性绑定的理解是在示波器变量的第一个初始化之后,如果对象值更改,则视图不会更改。因为观察者没有生效。ex
$scope.myVar=null;
<p>{{::myVar}}</p>
如果对$scope.myVar
有任何更改,这些更改在视图中不会影响因为它只会采用其第一个初始化值。多数民众赞成。