当输入属性发生更改时,Angular不会调用更改检测。我读到过,除非绑定发生变化,否则angular不会调用onChanges,但在本例中,我将输入绑定到了ng datePicker模型,但仍然没有调用ngOnChanges。
以下是附加的stackBlitz示例:https://stackblitz.com/edit/angular-zvpice
发布于 2018-09-26 04:33:57
如果您在父组件中更改它,则在子组件中调用ngOnChanges。
使用此代码进行测试,在parent.ts中按如下所示添加ngOnInit,其余代码保持不变:
ngOnInit() {
setTimeout(() => {
this.minDate = {year: 2019, month: 4, day: 4};
}, 3000)
}或者看看这个闪电战https://stackblitz.com/edit/angular-zvpice-slhbxd
更改子对象中的minDate不会调用ngOnChanges
发布于 2018-09-26 04:35:07
它不会被调用,因为子组件本身正在更改其内部属性。当某些实际绑定到输入属性父组件将更改该输入时,它将被调用。
我使用edited your demo并将按钮及其单击处理程序移动到父组件。现在,当您单击并更改绑定时,将调用onChanges回调。
https://stackoverflow.com/questions/52506190
复制相似问题