HarmonyOS 鸿蒙Next @Builder 装饰器引用传参报错
HarmonyOS 鸿蒙Next @Builder 装饰器引用传参报错
//组件封装在函数中 按引用传参 $$
function MyBuilder($$:{ userName: string }) {
Column() {
Text(hello ${$$.userName}
)
.fontSize(30)
.margin(20)
}
}
//页面调用函数
struct Parent {
@State personName: string = “张三”
build() {
Column() {
MyBuilder({ userName: this.personName })
Button(“更改名字”).onClick(() => {
this.personName = “李四”
})
}.width(“100%”)
}
}
Object literals cannot be used as type declarations (arkts-no-obj-literals-as-types) <ArkTSCheck>
在使用HarmonyOS的@Builder
装饰器时遇到引用传参报错,通常可能是由于几个常见原因引起的。首先,检查传入的引用类型是否符合@Builder
的期望,包括是否为可序列化或满足特定的接口约束。其次,确认@Builder
使用的上下文和版本支持你的使用场景。此外,检查是否有编译器的版本问题或依赖库冲突。
确保所有相关类都已正确注解并遵循构建器的规则。如果问题依旧没法解决请加我微信,我的微信是itying888。