HarmonyOS父类的getter在子类没用,子类需要写一个一模一样,否则会返回undefined

代码片段:

export class Observable<T> { 
  protected _value: T | undefined 
  get value(): T | undefined { 
    return this._value // 在子类没作用 
  } 
} 
export class MutableObservable<T> extends Observable<T> { 
  set value(newValue: T | undefined) { 
    if (this._value != newValue) { 
      this._value = newValue 
      // this.notifyObservers(newValue) 
    } 
  } 
  // 不写这个就会,别人调用.value时会返回undefined 
  get value(): T | undefined { 
    return this._value 
  } 
}
HarmonyOS
2024-08-27 14:22:56
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
put_get

在JavaScript中,子类默认不会继承父类的getter和setter属性。这是因为getter和setter是不可枚举的属性,它们不像普通的属性那样可以通过for…in循环或Object.keys方法来枚举。如果想要子类继承父类的getter和setter,需要手动在子类中重新定义这些属性。这通常意味着需要在子类中编写与父类相同的getter和setter函数。

分享
微博
QQ
微信
回复
2024-08-27 17:52:16
相关问题
HarmonyOS如何获取一个名称
172浏览 • 2回复 待解决
需要一个NFC读取demo
74浏览 • 1回复 待解决
需要一个获取当前省份方法
134浏览 • 1回复 待解决
Web组件获取高度不一样
1756浏览 • 1回复 待解决
如何封装一个通用commonEvent工具
1585浏览 • 1回复 待解决
JS swiper 怎么像list一样动态添加item?
6068浏览 • 1回复 待解决
鸿蒙和安卓有什么不一样
6079浏览 • 3回复 待解决