如何监听数组内对象属性变化

如何监听数组内对象属性变化

HarmonyOS
2024-01-30 21:39:10
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
harry_hbz

通过@Observed配合@ObjectLink装饰符实现。@Observed用于类,@ObjectLink用于变量。

参考代码

// 1. 在类上使用@Observed。 
@Observed 
class ClassA { 
  public name: string; 
  public c: number; 
  public id: number; 
 
  constructor(c: number, name: string = 'OK') { 
    this.name = name; 
    this.c = c; 
  } 
} 
 
@Component 
struct ViewA { 
  label: string = 'ViewA1'; 
  // 2. 在组件变量使用@ObjectLink。 
  @ObjectLink a: ClassA; 
 
  build() { 
    Row() { 
      Button(`ViewA [${this.label}] this.a.c= ${this.a.c} +1`) 
        .onClick(() => { 
          this.a.c += 1; 
        }) 
    }.margin({ top: 10 }) 
  } 
}
分享
微博
QQ
微信
回复1
2024-02-01 10:22:14
相关问题
如何监听窗口大小的变化
2318浏览 • 1回复 待解决
如何监听window大小的变化
537浏览 • 1回复 待解决
如何判断一个对象是否在对象数组
2457浏览 • 1回复 待解决
HarmonyOS 音频设备变化监听
243浏览 • 1回复 待解决