HarmontOS-ArkUI V2状态 !!语法糖 双向绑定

什么是双向绑定

HarmontOS-ArkUI V2状态 !!语法糖 双向绑定_第1张图片

双向绑定指的是在组件间数据的双向绑定。当一个值无论是在父组件还是子组件中改动都会在这两层中都更新界面。

回顾过往的“双向绑定”实现方式

靠@Event装饰回调函数

一般是对于@Param修饰的状态变量。当子组件发生某个动作的时候,调用某个父组件传递过来的回调函数。以让父组件在自己的逻辑中更新它的状态变量,从而触发@Param的单向更新。代码如下:

import hilog from '@ohos.hilog'
 
const  LOG_DOMAIN:number = 0x0001
const LOG_TAG:string = 'EventTest'
@Entry
@ComponentV2
struct EventTest {
  @Local mTitle:string = "Title one"
  @Local mFontColor:Color = Color.Red
  build() {
    Column(){
      Child1({
        mTitle: this.mTitle,
        mFontColor: this.mFontColor,
        changeFactory: (x:number)=>{
          if (x == 1) {
            this.mTitle = "Title One";
            this.mFontColor = Color.Red;
          } else if (x == 2) {
            this.mTitle = "Title Two";
            this.mFontColor = Color.Green;
          }
          hilog.info(LOG_DOMAIN, LOG_TAG, `father: mTitle=${this.mTitle}, mFontColor=${this.mFontColor}`)
        }
      })
    }
    .height(&

你可能感兴趣的:(HarmonyOS学习笔记,harmonyos,ArkUI,华为,ArkTs,ArkTS)