有沒有辦法監聽@Input更改?angular2 @input - 更改檢測
在以下示例中,我希望在'inputData'值發生更改時通知您。
@Input() inputData: InputData;
有沒有辦法監聽@Input更改?angular2 @input - 更改檢測
在以下示例中,我希望在'inputData'值發生更改時通知您。
@Input() inputData: InputData;
是的,你可以使用OnChanges
生命週期事件:
@Input() inputData: InputData;
ngOnChanges() {
console.log(this.inputData);
}
瞭解更多關於角的生命週期事件here。
你可以聽OnChanges
組件的生命週期事件的組件內部
ngOnChanges(model: SimpleChanges){
console.log(model)
}
您可以使用類似:提供
Input('value')
set value(val: string) {
this._value = val;
console.log('new value:', value); // <-- do your logic here!
}
更多信息這link
你也可以乘坐看看this article
import { Component, Input, OnChanges, SimpleChange } from '@angular/core';
export class Demo implements OnChanges {
@Input() inputData: InputData;
ngOnChanges(changes: {[propertyName: string]: SimpleChange}) {
if (changes['inputData'] && this.inputData) {
//your logic work when input change
}
}
}