我的组件包含ChangeDetectionStrategy.OnPush
和多个@Input
属性。
当多个属性同时更改时,我有多次调用ngOnChanges
。
我需要在所有ngOnChanges
完成后重新计算大小(对于该刻度/摘要/更改检测周期)。
所以没有
ngOnChanges(a) -> recalculate()
ngOnChanges(b) -> recalculate()
ngOnChanges(c) -> recalculate()
我想要
ngOnChanges(a)
ngOnChanges(b)
ngOnChanges(c)
recalculate()
setTimeout可能会有效,但我想知道如何使用ng2工具正确地完成它。
答案 0 :(得分:0)
试试这个:
ngOnChanges(changes: SimpleChange}) {
if(changes['a'] && changes['b'] && changes['c']){
recalculate();
}
}