HarmonyOS 嵌套Class状态观察问题?

@Observed
Class A {
  field1?: string
  field2?: Array<ClassB>
}
@Observed
Class B {
  field3?: string
}
@Component
struct View {
  @ObjectLink a: ClassA
  build() {
    if (this.a && this.a.field2 && this.a.filed2.field3) {
      Text(this.a.filed2.field3)
    }
  }
}

怎么能观察到ClassB中field3变更后的状态?现在更新field3的值后页面不会刷新

阅读 471
1 个回答

参考demo

@ObservedV2
class Son {
  @Trace age: string = "100";
}
class Father {
  son: Son = new Son();
}
@Entry
@Component
struct Index {
  father: Father = new Father();
  build() {
    Column() {
      // 当点击改变age时,Text组件会刷新
      Text(`${this.father.son.age}`)
        .onClick(() => {
          this.father.son.age = "102";
        })
      TextInput({text: `${this.father.son.age}`, placeholder: "aaa"})
    }
  }
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进