HarmonyOS 封装一个公用的getContext()

封装一个公用的export const context = getContext()

HarmonyOS
3天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

请参考如下代码

import { Context } from '@kit.AbilityKit';
export class GlobalContext {
  private constructor() {}
  private static instance: GlobalContext;
  private context:Context | undefined

  public static getInstance(): GlobalContext {
    if (!GlobalContext.instance) {
      GlobalContext.instance = new GlobalContext();
    }
    return GlobalContext.instance;
  }

  setContext(contex:Context){
    this.context = contex
  }

  getContext(): Context | undefined {
    return this.context
  }
}

在EntryAbility初始化设置context

async onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): Promise<void> {
  hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate');
  GlobalContext.getInstance().setContext(getContext(this));
}
分享
微博
QQ
微信
回复
3天前
相关问题
如何封装一个通用commonEvent工具类
1901浏览 • 1回复 待解决
HarmonyOS 需要一个axios封装工具类
109浏览 • 1回复 待解决
如何封装一个自定义Dialog对话框
2254浏览 • 1回复 待解决