HarmonyOS 使用@BuilderParam 的尾随闭包时,无法获取 Provide 的值
下方代码中,不使用尾随闭包时,Bookname 组件能 consume 到 Book 组件 provide 的信息。
但换为注释中的 尾随闭包时,无法会报错:
Error message:@Component 'BookName'[9] missing @Provide property with name bookInfo.
Fail to resolve @Consume(bookInfo).
- 1.
- 2.
// Index.ets
@Entry
@Component
struct Index {
@State book:BookItem = new BookItem('修养')
@Builder bookname() {
BookName()
}
build() {
Column() {
// 下面注释的用法会报错
// Book({
// book: this.book
// }) {
// this.bookname()
// }
Book({
book:this.book,
colser: this.bookname
})
}
}
}
export class BookItem {
name: string = '';
constructor(name:string) {
this.name = name;
}
}
@Component
export struct BookName {
@Consume bookInfo: BookItem;
build() {
Text(this.bookInfo.name)
}
}
@Component
struct Book {
@Prop book: BookItem;
@Provide bookInfo: BookItem = this.book
@Builder
closerBuilder() {
}
@BuilderParam colser: () => void = this.closerBuilder
build() {
Column() {
this.colser()
}
}
}
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
- 37.
- 38.
- 39.
- 40.
- 41.
- 42.
- 43.
- 44.
- 45.
- 46.
- 47.
- 48.
- 49.
- 50.
- 51.
- 52.
- 53.
- 54.
- 55.
- 56.
- 57.
- 58.
- 59.
HarmonyOS
赞
收藏 0
回答 1
相关问题
HarmonyOS @BuilderParams尾随闭包方式能否传递参数
725浏览 • 1回复 待解决
HarmonyOS在使用@BuilderParam的情况下如何使用@Provide和@Cousume
1201浏览 • 1回复 待解决
class使用闭包方式初始化 默认值丢失
2736浏览 • 1回复 待解决
如何在ArkTS中使用闭包
1588浏览 • 1回复 待解决
HarmonyOS 关于闭源包的问题
1012浏览 • 1回复 待解决
HarmonyOS @BuilderParam结合自定义组件时的使用问题
571浏览 • 1回复 待解决
HarmonyOS @BuilderParam实现组件插槽时的this指向问题
685浏览 • 1回复 待解决
HarmonyOS 关于使用@BuilderParam的问题
1491浏览 • 1回复 待解决
HarmonyOS 状态管理Provide和Consume无法和NodeContainer使用
956浏览 • 1回复 待解决
使用原生json解析时能否获取Array类型的value值?
2626浏览 • 1回复 待解决
HarmonyOS 命名路由的的params支持哪些类型 ?可以支持闭包吗?
849浏览 • 1回复 待解决
HarmonyOS 使用@builder和@builderParam时,@builder中的ui不会动态更新
1510浏览 • 1回复 待解决
HarmonyOS @BuilderParam使用问题
516浏览 • 1回复 待解决
HarmonyOS 华为支付时服务端使用java预下单时无法获取到com.huawei.petalpay包
966浏览 • 1回复 待解决
HarmonyOS 华为支付时服务端使用java预下单时无法获取到com.huawei.petalpay包?
821浏览 • 0回复 待解决
HarmonyOS 使用@ohos/buffer下的buffer类时,获取buffer.byteoffset 的值为0?
737浏览 • 1回复 待解决
HarmonyOS 在Page页使用浮窗显示Widget时,provide与consume的传递问题
1011浏览 • 1回复 待解决
HarmonyOS 本地打har包A时,无法带入依赖的三方har包B
1073浏览 • 1回复 待解决
HAR包中使用window作为Toast时无法引入页面组件
2477浏览 • 1回复 待解决
HarmonyOS 使用image展示pixelMap无法展示图片 ,但有确切的值
1213浏览 • 1回复 待解决
HarmonyOS 上传文件 无法获取接口返回值
956浏览 • 1回复 待解决
HarmonyOS 使用定位库获取定位时海拔高度字段无值
856浏览 • 1回复 待解决
使用BuilderParam在父组件调用this的方法报错:Error message:is not callable
2656浏览 • 1回复 待解决
HarmonyOS 利用BuilderParam将组件传值后,调用方法闪退
869浏览 • 1回复 待解决
#鸿蒙学习大百科#为什么建议使用参数传递函数外的变量而不是使用闭包?
707浏览 • 1回复 待解决
@BuilderParam尾随闭包情况下@Provide必须在当前宿主对象 否则不能获取Provide的值
参考文档:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-provide-and-consume-V5#builderparam%E5%B0%BE%E9%9A%8F%E9%97%AD%E5%8C%85%E6%83%85%E5%86%B5%E4%B8%8Bprovide%E6%9C%AA%E5%AE%9A%E4%B9%89%E9%94%99%E8%AF%AF