【Angular】为什么要将 @Input 和 getter、setter 一起使用?

例子:

private _message: string;

@Input() // specify Input decorator here
set message(inputMessage: string) {
  this._message = inputMessage && inputMessage.toUpperCase(); // uppercase message here
}

get message(): string {
  return this._message;
}

目的:为了在数据输入时加入数据处理逻辑,就算后续Input的值发生改变,message也能同步更新。而不用在ngOnChange里面处理。

参考:3 Different Ways to Use Input Decorator

posted @ 2024-01-17 16:53  unuliha  阅读(27)  评论(0编辑  收藏  举报