《鸿蒙开发-答案之书》 @BuilderParam和@Builder是什么东西?

126 阅读1分钟
《鸿蒙开发-答案之书》 @BuilderParam和@Builder是什么东西?

@Builder 是可以在@Component组件中自己封装的组件,你可以把特定功能组件写在这个组件里面。然后它可以放在容器组件里面用

@BuilderParam 用在我们自定义@Component组件中,如果你引用那边再传真正的布局过来替换。注意引用那边只能传@Builder的组件。可认为是插槽

简单示例代码:

@Component
export struct CommonTopBar {
  // 标题可能改动
  @Prop title: string
  private showBackButton: boolean = true
  private showBottomLine:boolean = false
  
  @Builder leftCustom() {}
  @BuilderParam LeftCustomBuilder: () => void = this.leftCustom

  @Builder rightCustom(){  }
  @BuilderParam rightStyle : () => void = this.rightCustom