ArkTS @BuilderParam装饰器的用法(附带实例)
@BuilderParam 用于装饰自定义组件(struct)中的属性,装饰的属性可作为一个 UI 结构的占位符,待创建该组件时,可通过参数为其传入具体的内容。其作用类似于 Vue 框架中的槽(slot)。
下面通过几个步骤来进一步了解 @BuilderParam 装饰器的用法。
1) 定义一个组件,使用 @BuilderParam 占位,代码如下:
2) 使用 @Builder 装饰器来定义 UI 结构,代码如下:
3) 在组件中通过传入不同的 UI 来填充结构,代码如下:

图 1 @BuilderParam 装饰器
下面通过几个步骤来进一步了解 @BuilderParam 装饰器的用法。
1) 定义一个组件,使用 @BuilderParam 占位,代码如下:
@Component struct Container { //@BuilderParam属性 @BuilderParam content: () => void build() { Column() { Text('其他内容') //其他内容 this.content(); //占位符 Button('其他内容') //其他内容 } } }
2) 使用 @Builder 装饰器来定义 UI 结构,代码如下:
@Builder function autoUI1() { Text('这是自定义插槽1') } @Builder function autoUI2() { Text('这是自定义插槽2') }
3) 在组件中通过传入不同的 UI 来填充结构,代码如下:
Container({content:autoUI1}) Divider().strokeWidth(20) Container({content:autoUI2})完整代码讲解如下图所示:

图 1 @BuilderParam 装饰器