如何实现全局dialog?

app需要有全局的dialog的功能,用于显示网络请求时图标, dialog提示等功能, 目前的customdialog只支持在@component的文件里面创建, 有没有什么办法可以实现全局的dialog呢?

HarmonyOS
2024-10-11 10:49:31
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
put_get

可以使用promptAction.showDialog,进行定义全局的弹窗。在utils中定义一个全局方法getDialog(),其他组件中import该方法,就可以直接调用getDialog()实现弹窗的全局调用。utils参考代码如下:

//utils.ets  
import promptAction from '@ohos.promptAction';  
import { BusinessError } from '@ohos.base';  
  
export function getDialog() {  
  try {  
    promptAction.showDialog({  
      title: 'Title Info',  
      message: 'Message Info',  
      buttons: [  
        {  
          text: 'button1',  
          color: '#000000'  
        },  
        {  
          text: 'button2',  
          color: '#000000'  
        }  
      ],  
    })  
      .then(data => {  
        console.info('showDialog success, click button: ' + data.index);  
      })  
      .catch((err: Error) => {  
        console.info('showDialog error: ' + err);  
      })  
  } catch (error) {  
    let message = (error as BusinessError).message  
    let code = (error as BusinessError).code  
    console.error(showDialog args error code is ${code}, message is ${message});  
  }  
}

promptAction.showDialog方法参数参考文档地址:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-promptaction-V5

分享
微博
QQ
微信
回复
2024-10-11 16:42:52
相关问题
如何全局实现一个自定义dialog弹窗
2720浏览 • 1回复 待解决
全局关闭弹窗如何实现
161浏览 • 2回复 待解决
如何实现全局浮窗效果
1598浏览 • 1回复 待解决
HarmonyOS 如何实现APP内全局弹窗
384浏览 • 1回复 待解决
HarmonyOS 全局loading的菊花如何实现
207浏览 • 1回复 待解决
如何实现类的全局变量?
193浏览 • 1回复 待解决
如何实现 app 内置全局悬浮球功能?
1855浏览 • 1回复 待解决
使用dialog窗口实现红包雨窗口创建
703浏览 • 1回复 待解决
鸿蒙怎么实现自定义布局的Dialog
9104浏览 • 2回复 已解决
如何全局存储WebController
753浏览 • 1回复 待解决
dialog跳转新页面返回后dialog关闭
194浏览 • 1回复 待解决
HarmonyOS 如何定义全局 style ?
248浏览 • 1回复 待解决
如何支持全局主题切换
745浏览 • 1回复 待解决