HarmonyOS 全局的loading组件

​全局的loading组件、调接口前开启loading,接口结束时、关闭loading。

想要loading弹窗代码全局直接可以引用,不用每个页面都写​。

HarmonyOS
2024-11-28 10:20:21
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
shlp

​目前暂不支持声明全局的CustomDialogController,CustomDialogController仅在作为@CustomDialog和@Component struct的成员变量,且在@Component struct内部定义时赋值才有效。

建议使用:promptAction.openCustomDialog,相关文档​https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-promptaction-V5

对话框customDialogId要保持一致,建议使用全局变量,参考demo如下:​

//index.ets 
import { promptAction } from '@kit.ArkUI' 
import { customDialogBuilder } from './components' 
 
AppStorage.setOrCreate('customDialogId', 0); 
@Entry 
@Component 
struct Index { 
  @State message: string = 'Hello World' 
  @StorageLink('customDialogId') customDialogId: number = 1; 
  build() { 
    Row() { 
      Column() { 
        Text(this.message) 
          .fontSize(50) 
          .fontWeight(FontWeight.Bold) 
          .onClick(() => { 
            promptAction.openCustomDialog({ 
              builder: customDialogBuilder.bind(this) 
            }).then((dialogId: number) => { 
              this.customDialogId = dialogId 
            }) 
          }) 
      } 
      .width('100%') 
    } 
    .height('100%') 
  } 
} 
 
//custom.ets 
import promptAction from '@ohos.promptAction' 
 
@Builder 
export function customDialogBuilder() { 
  Column() { 
    Text('Custom dialog Message').fontSize(10) 
    Row() { 
      Button("确认").onClick(() => { 
        promptAction.closeCustomDialog(AppStorage.get<number>('customDialogId')) 
      }) 
      Blank().width(50) 
      Button("取消").onClick(() => { 
        promptAction.closeCustomDialog(AppStorage.get<number>('customDialogId')) 
      }) 
    } 
  }.height(200).padding(5) 
}
分享
微博
QQ
微信
回复
2024-11-28 15:42:28
相关问题
HarmonyOS 如何在全局使用loading组件
672浏览 • 1回复 待解决
HarmonyOS 没有全局api loading动画
397浏览 • 1回复 待解决
HarmonyOS 全局loading菊花如何实现?
362浏览 • 1回复 待解决
HarmonyOS 是否有全局loading这种控件?
367浏览 • 1回复 待解决
HarmonyOS Loading提示插件问题
658浏览 • 1回复 待解决
HarmonyOS通过方法调用loading有吗?
420浏览 • 0回复 待解决
组件如何动态设置全局唯一ID?
6932浏览 • 1回复 待解决
HarmonyOS 全局弹窗问题
406浏览 • 1回复 待解决
HarmonyOS是否有全局打印服务
426浏览 • 1回复 待解决
如何通过Progress实现loading效果?
405浏览 • 1回复 待解决
HarmonyOS 全局样式怎么创建?
256浏览 • 1回复 待解决