假设我有
的组件@Input() timeData: TimeData
其中TimeData
只包含一个字段:time
。
我想观察timeData.time
,假设只有timeData.time
被更改(而不是整个timeData
)
ngOnChanges
没有跟踪此类更改,而{{timeData.time}}
工作正常。
我的最终目标是设置标记goodTime
if(timeData.time % 10 === 0){
goodTime = true
}
答案 0 :(得分:5)
您不会提供有关TimeData
看起来如何的信息,但是当您添加EventEmitter
时,您可以订阅更改。
class TimeData {
_time: number;
get time(): number {
return this._time;
}
set time(value: number) {
this._time = number;
timeChange.next(number);
}
timeChange: EventEmitter<number> = new EventEmitter<number>();
}
像
一样使用它timeData.timeChange.subscribe((value) => { doSomething(value);}
答案 1 :(得分:0)
之前我没有注意到,但其他人也提出了类似的问题:
How to get onChanges for properties changed on an object sent in for an @Input