如何在自定义函数中创建一个UI组件

如何在自定义函数中创建一个UI组件

HarmonyOS
2024-03-17 14:34:38
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
OwenOO

可以使用@Builder装饰器,也称为“自定义构建函数”。自定义构建函数可以在所属组件的build方法和其他自定义构建函数中调用,但不允许在组件外调用。可参考如下代码:

// xxx.ets 
class ABuilderParam { 
  paramA1: string = ''; 
} 
 
@Builder 
function ABuilder($$: ABuilderParam) { 
  Row() { 
    Text(`UseStateVarByReference: ${$$.paramA1} `) 
  } 
} 
 
@Entry 
@Component 
struct Parent { 
  @State label: string = 'Hello'; 
 
  build() { 
    Column({ space: 20 }) { 
      Text(`Parent`) 
      // 在Parent组件中调用ABuilder的时候,将this.label引用传递给ABuilder 
      ABuilder({ paramA1: this.label }) 
      Button('Click me').onClick(() => { 
        // 点击“Click me”后,UI从“Hello”刷新为“ArkUI” 
        this.label = 'ArkUI'; 
      }) 
    } 
    .width('100%') 
    .alignItems(HorizontalAlign.Center) 
  } 
}
分享
微博
QQ
微信
回复
2024-03-18 17:19:10
相关问题
使用自定义函数创建一个UI
1185浏览 • 1回复 待解决
如何在鸿蒙应用创建自定义组件?
1691浏览 • 1回复 待解决
如何在全局实现一个自定义dialog弹窗
3978浏览 • 1回复 待解决
HarmonyOS 自定义组件如何绘制一个三角
1319浏览 • 1回复 待解决
如何实现一个自定义询问框
1448浏览 • 1回复 待解决
如何快速开发出一个自定义弹窗?
1392浏览 • 1回复 待解决