HarmonyOS 父组件通过prop传函数给子组件调用会报错
在父组件中引入子组件InputDialog,传递了callback作为prop但是子组件调用报错。
@Component
struct FlexItem {
@Prop title: string = ""
@Prop value: string | number = ""
controller: CustomDialogController = new CustomDialogController(
{
builder: InputDialog({
callback: () => {
this.callBack
}
}),
cornerRadius: "12lpx"
}
)
callBack(name: string) {
console.log("确定", name)
}
}
子组件:
@CustomDialog
@Component
struct InputDialog {
@State tagName: string = ""
@Prop callback: Function;
controller: CustomDialogController = new CustomDialogController({
builder: "",
})
build() {
Column() {
TextInput({
placeholder: "请输入备注",
text: $$this.tagName
})
.placeholderFont({
size: "31lpx",
family: "PingFangSC, PingFang SC;"
})
.placeholderColor("#9B9B9B")
.type(InputType.PhoneNumber)
.margin({ left: "31lpx" })
.backgroundColor(Color.White)
.borderColor("#EEEEEE")
.borderWidth({ bottom: "1lpx" })
Flex({ justifyContent: FlexAlign.SpaceAround }) {
Button('取消')
.onClick(() => {
this.controller.close()
}).backgroundColor(0xffffff).fontColor(Color.Black)
Button('确定')
.onClick(() => {
this.controller.close()
console.log(this.tagName)
typeof this.callback == "function" && (this.callback(this.tagName))
}).backgroundColor(0xffffff).fontColor("#FF8200")
}.margin({ top: "24lpx" })
}
.padding({
left: "39lpx",
right: "39lpx",
top: "52lpx",
bottom: "24lpx"
})
.backgroundColor(Color.White)
}
}
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
父组件给子组件传递函数
304浏览 • 1回复 待解决
弹窗组件调用父组件函数传递
1059浏览 • 1回复 待解决
父组件调用子组件的方法
1289浏览 • 1回复 待解决
HarmonyOS 父组件调用子组件方法
25浏览 • 1回复 待解决
HarmonyOS 子组件被父组件包装后,如何通过父组件设置子组件的属性
558浏览 • 1回复 待解决
子组件调用父组件里的方法
335浏览 • 1回复 待解决
子组件使用@Link修饰成员变量时,如何通过父组件传值
1864浏览 • 1回复 待解决
HarmonyOS 父组件怎么调用子组件的方法
78浏览 • 1回复 待解决
HarmonyOS 子组件调用父组件的方法demo
39浏览 • 1回复 待解决
HarmonyOS 父组件如何调用子组件的方法?
400浏览 • 0回复 待解决
HarmonyOS 关于子组件调用父组件方法的问题
1088浏览 • 1回复 待解决
HarmonyOS 父组件如何调用子组件里的方法
40浏览 • 1回复 待解决
HarmonyOS是否支持在父组件onPageShow函数中通过执行某些操作可以触发子组件重新渲染
847浏览 • 1回复 待解决
HarmonyOS 弹窗父组件的滑动事件穿透给子组件,禁止子组件滑动,允许点击事件传透
400浏览 • 0回复 待解决
HarmonyOS 通过子组件调用父组件方法修改父组件的值后,如何显示以及动态刷新父组件bindsheet标题栏的UI
39浏览 • 1回复 待解决
HarmonyOS 如何在父组件中调用子组件的方法
65浏览 • 1回复 待解决
HarmonyOS @Prop同步给子组件的数据如何通过@Builder传递?
34浏览 • 1回复 待解决
开源鸿蒙中 ets子组件调用父组件中的方法?
5721浏览 • 1回复 待解决
如何在父组件中调用子组件封装的方法
1638浏览 • 1回复 待解决
HarmonyOS 父组件向子组件传的值,在子组件的哪个环节(生命周期)可以拿到
31浏览 • 1回复 待解决
HarmonyOS 组件模块化, 父组件如何调用子组件类的方法?
0浏览 • 0回复 待解决
HarmonyOS 子组件超出父组件布局
31浏览 • 1回复 待解决
HarmonyOS 子组件超出父组件宽度
42浏览 • 1回复 待解决
HarmonyOS 父组件如何响应子组件内的事件方法 ,子组件如何响应父组件内的事件方法?
387浏览 • 1回复 待解决
harmony页面开发父组件如何传递事件方法给子组件,通过子组件可以进行回调反馈?
709浏览 • 2回复 待解决
并不是所有东西都能用@prop修饰的,@Prop文档说明的链接在下方,可以使用private修饰,参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-prop-V5#装饰器使用规则说明
示例参考: