HarmonyOS CustomDialog内子控件调用close()方法无效
controller调用时为undefined,无法关闭
        HarmonyOS
      
        赞
        
 收藏 0
 回答 1
 
        待解决
        
相关问题
 按钮内子控件如何动态更新 
1584浏览  • 1回复 待解决
HarmonyOS @CustomDialog 调用 pushUrl 
1071浏览  • 1回复 待解决
HarmonyOS Socket连接调用close后重新connect失败 
1178浏览  • 1回复 待解决
HarmonyOS 调用fs.accessSync 判断文件是否存在之后,是否需要调用close 
916浏览  • 1回复 待解决
HarmonyOS appRecovery.restartApp()方法无效 
764浏览  • 1回复 待解决
HarmonyOS朗读控件,notificationIcon/notificationName参数配置无效果 
926浏览  • 1回复 待解决
HarmonyOS  显示软键盘方法无效 
738浏览  • 1回复 待解决
HarmonyOS  自定义弹窗CustomDialog调用问题 
1647浏览  • 1回复 待解决
HarmonyOS customDialog调用router.push启动新页面,会把customDialog关闭 
836浏览  • 1回复 待解决
HarmonyOS 手机震动接口调用无效果 
2194浏览  • 1回复 待解决
HarmonyOS 自定义弹框在自身的struct中无法调用close函数关闭 
731浏览  • 1回复 待解决
HarmonyOS  this.controller.close 直接崩溃 
624浏览  • 1回复 待解决
ATSUI可以调用JSUI的控件吗? 
3008浏览  • 0回复 待解决
Sensor Native调用OH_Sensor_DestroySubscriber无效 
1178浏览  • 1回复 待解决
TCPSocket on('close')错误码 
1669浏览  • 1回复 待解决
HarmonyOS 自定义弹窗内的 close方法闪退,应该是未定义,但不知如何调整 
1343浏览  • 1回复 待解决
倒计时控件用的TextTimer在有的机器上无效,有什么解决方法吗,或者是替代方案 
1360浏览  • 0回复 待解决
HarmonyOS CustomDialog怎么把弹窗封装到某个类的方法中 
864浏览  • 1回复 待解决
父控件怎么才能使用到子控件的方法或属性,或者将子控件将一些方法或属性怎么回调给父控件 
2547浏览  • 1回复 待解决
arkTs 如何在方法调用中,打印出方法的调用栈? 
4955浏览  • 1回复 待解决
HarmonyOS  自定义 Dialog this.controller.close() 关闭失败 或 undefined 
931浏览  • 1回复 待解决
HarmonyOS  NavDestination的onShown方法中修改导航栏颜色无效 
1174浏览  • 1回复 待解决
HarmonyOS window的重名方法调用 
839浏览  • 1回复 待解决
cocos引擎调用HarmonyOS系统方法 
1959浏览  • 1回复 待解决





















在@CustomDialog装饰器中的controller不能用?:的形式声明,并且在组件中使用时,dialogController应该在当前组件下声明,不能在点击事件中声明。如果在事件中声明会导致CustomDialog内子组件的this指不到当前的controller,因此无法关闭弹窗,参考以下代码修改 的组件:
传递builder后this指不到原先的controller,为了避免this指向改变,在TopNavigationView中声明以下代码:
如果在LeaderBoardPage中声明builder,builder中的this指向的是LeaderBoardPage,传递到TopNavigationView后,this指向的是TopNavigationView,但是TopNavigationView中并没有声明dialogController,所以无法关闭弹窗。关于 写死弹窗的问题,弹窗的子组件是 builder: DescriptionDialog(),只需要修改DescriptionDialog组件即可修改弹窗形式,在这个builder中this是指向CustomDialogController的,所以可以打开弹窗。