我有一个具有ChangeDetectionStrategy.OnPush
和多个@Input
属性的组件。
当多个属性同时更改时,我对ngOnChanges
进行了多次调用。
我需要在所有ngOnChanges
完成后重新计算大小(对于该tick/digest/更改检测周期(。
所以没有
ngOnChanges(a) -> recalculate()
ngOnChanges(b) -> recalculate()
ngOnChanges(c) -> recalculate()
我想要
ngOnChanges(a)
ngOnChanges(b)
ngOnChanges(c)
recalculate()
settimeout可能会起作用,但我想知道如何使用NG2工具正确地进行操作。
尝试以下:
ngOnChanges(changes: SimpleChange}) {
if(changes['a'] && changes['b'] && changes['c']){
recalculate();
}
}