HarmonyOS 鸿蒙Next @BuilderParam 使用尾随闭包和不使用尾随闭包
HarmonyOS 鸿蒙Next @BuilderParam 使用尾随闭包和不使用尾随闭包
@BuilderParam 没有使用尾随闭包的时候,传递@Builder布局可以正常显示出来.但是有this指向的问题
ListPage({ listItem: this.orderListItem })
当使用闭包的时候布局就不显示
ListPage({ listItem: ()=>{this.orderListItem}})
@Builder
orderListItem($$: OrderData){}
ListPage
@BuilderParam listItem: ($$: EasyData) => void
2 回复
在HarmonyOS鸿蒙开发中,@BuilderParam
注解用于简化复杂对象的构建过程,它允许通过链式调用或者尾随闭包的方式来设置对象的属性。
使用尾随闭包:
尾随闭包是一种简洁的构建对象属性的方式,它允许在方法调用的末尾直接传入一个闭包(lambda表达式或匿名函数),在该闭包内部设置对象的属性。这种方式代码更加紧凑,特别是在属性较多时,可以减少代码嵌套,提高可读性。
示例:
val myObject = MyObject.builder() {
this.property1 = "value1"
this.property2 = "value2"
}.build()
不使用尾随闭包:
不使用尾随闭包时,你需要通过链式调用的方式来设置对象的属性,这种方式相对冗长,特别是在属性较多或需要多次调用设置方法时,代码可读性较差。
示例:
val myObject = MyObject.builder()
.setProperty1("value1")
.setProperty2("value2")
.build()
两种方式各有优劣,选择哪种方式取决于你的具体需求和代码风格偏好。如果项目中对代码简洁性和可读性要求较高,推荐使用尾随闭包。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html