🎯 V2: @Event装饰器:规范组件输出

📌 见解

1️⃣ 如果没有在外部初始化,但本地有默认值时,会使用本地默认的函数进行处理

2️⃣ 使用@Event可以更改父组件中变量的值

⚠️ 使用场景:

更改父组件中变量

🧩 拆解

@Entry
@ComponentV2
struct EventCase {
  @Local name: string = "xiaoxiao"

  build() {
    Column() {
      Text(`name: ${this.name}`)
      EventCaseSon({ changeEventCaseName: () => this.name = 'EventCaseSon' })
    }
  }
}

@ComponentV2
struct EventCaseSon {
  @Event changeEventCaseName: () => void = () => {}

  build() {
    Column() {
      Button("changeEventCaseName")// @Once与@Param搭配使用时,可以在本地修改@Param变量的值。
        .onClick(() => this.changeEventCaseName())
    }
  }
}

📝 主要是与@Param联合使用实现双向数据绑定

🌸🌼🌺

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐