HarmonyOS 如何在一个任意function中获取当前ability context?

在组件中,使用 getContext() 可以获取当前 ability context,但在一个与 ArkUI 组件无关的函数中调用 getContext() 返回 undefined,请问这种情况下应该如何获取 context?还是只能由 ArkUI 通过参数一层一层传入?或者说有没有全局的context?

HarmonyOS
2024-08-28 09:30:21
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

可以尝试使用GlobalContext

export class GlobalContext { 
  private constructor() { 
  } 
 
  private static instance: GlobalContext; 
  private _objects = new Map<string, Object>(); 
 
  public static getContext(): GlobalContext { 
    if (!GlobalContext.instance) { 
      GlobalContext.instance = new GlobalContext(); 
    } 
    return GlobalContext.instance; 
  } 
 
  getObject(value: string): Object | undefined { 
    return this._objects.get(value); 
  } 
 
  setObject(key: string, objectClass: Object): void { 
    this._objects.set(key, objectClass); 
  } 
}

参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-inner-application-extensioncontext-V5

分享
微博
QQ
微信
回复
2024-08-28 22:30:59
相关问题
如何在UI获取Context
3068浏览 • 1回复 待解决
如何在工具类获取Context
1995浏览 • 1回复 待解决
需要一个获取当前省份的方法
482浏览 • 1回复 待解决
entry如何拉起另一个ModuleAbility
4209浏览 • 1回复 待解决
如何在普通ets文件获取上下文Context
1147浏览 • 1回复 待解决