我们如何在打字稿中创建 getter() 一个 setter() 方法?我们什么时候可以使用这些方法?


export class Element {
private _class: string = null;
get className() {
return this._class;
}
set className(name) {
this._class = `todd-${name}`;
}
}

您的示例是正确的,但有关完整定义,请参阅有关访问器的打字稿手册。

通常,您会在以下情况下使用这些:

  • 您希望getset具有不同的修饰符(privateprotectedpublic(
  • 当你只想要一个吸气手或一个二传手,而不是两者兼而有之时。例如,当您希望允许任何人读取值但不允许任何人设置该值时。
  • 当您想在获取或设置值时执行某些代码时。例如,当您想要添加日志记录时。

整体、getset是语法糖,在任何情况下它们都可以被函数替换。

相关内容

最新更新