我有一个重复多次的组件,并希望避免过度观看。
angular
.module('myModule')
.component('component', {
template: '',
bindings: {
code: '@',
problemBinding: '<',
},
controller: componentController,
});
尽管大多数组件未在html中使用<
参数,但每个problem-binding
绑定似乎都创建了一个观察者。这在this plunkr中得到了证明,其中每个新的<
绑定都创建了与重复组件数量一样多的观察者。
是否有一种使用problemBinding
的方式,以便当且仅当使用了参数时,它才为组件创建观察者?
答案 0 :(得分:1)
angular
.module('myModule')
.component('component', {
template: '',
bindings: {
code: '@',
problemBinding: '<?',
},
controller: componentController,
});
通过将@
添加到表达式中,可以使所有4种绑定(=
,<
,&
和?
)成为可选的。标记必须位于模式之后和属性名称之前。
有关更多信息,请参见
答案 1 :(得分:1)
如果大多数组件未使用'problemBinding',请将其设置为可选,否则尽管使用了绑定,但仍将创建该绑定的监视。可以参考有角度的文档。