第八讲_ArkTS装饰器(五)

ArkTS装饰器(五)

  • 1. @Watch装饰器
    • 1.1 @Watch装饰器的特点
    • 1.2 @Watch装饰器使用示例
  • 2. ArkTS装饰器总结

1. @Watch装饰器

@Watch用于对状态变量的监听。如果需要关注某个状态变量的值是否改变,可以使用@Watch为状态变量设置回调函数。

何为状态变量?ArkTS装饰器(三)和ArkTS装饰器(四)两篇博文中介绍的装饰器,被那些装饰器修饰的变量就成为状态变量。

1.1 @Watch装饰器的特点

  1. 当观察到状态变量的变化对应的@Watch的回调方法将被触发。
  2. 如果在@Watch的方法里改变了其他的状态变量,也会引起状态变更和@Watch的执行;
  3. 在第一次初始化的时候,@Watch装饰的方法不会被调用,即认为初始化不是状态变量的改变。

ps:不要在@Watch的回调函数中,修改自身监听的状态变量,否则会造成死循环

1.2 @Watch装饰器使用示例

@Entry
@Component
struct FirstComponent {
  // 使用@Watch监听count状态变量的变化
  @State @Watch("myCallback") count: number = 0;
  @State message: string = "@Watch回调函数被第0次调用";

  // 定义一个@Watch的回调函数
  myCallback() {
    this.message = `@Watch回调函数被第${this.count}次调用`
  }

  build() {
    Column() {
      Text(this.message)
      Button("点击count+1")
        .onClick(() => {
          this.count++;
        })
    }
  }
}

第八讲_ArkTS装饰器(五)_第1张图片

2. ArkTS装饰器总结

  • ArkTS装饰器(一)
  • ArkTS装饰器(二)
  • ArkTS装饰器(三)
  • ArkTS装饰器(四)
  • 本篇博文ArkTS装饰器(五)

上面罗列的五篇博文中,介绍了ArKTS语言中的大部分装饰器。还有部分少数的装饰器,将会在介绍其它的知识点时穿插介绍。接下来会介绍ArKUI的布局和组件,希望各位开发同学能持续关注,进一步掌握HarmonyOS的应用开发。

你可能感兴趣的:(harmonyos应用开发,ArkTS,HarmonyOS,javascript,TypeScript)