HarmonyOS HSP依赖HAP相关变量会重新初始化

在HSP模块中依赖了底层HAR中通过export const xxx = new xxx() 来初始化的一个类,发现在hsp加载时,该类会重新初始化,har则不会,是否有办法使hsp也获取到同一个变量?

HarmonyOS
2024-12-23 15:13:27
616浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
FengTianYa

推荐使用新模块@ohos.data.preferences,@ohos.data.storage,该模块不再维护

文档地址:

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-data-preferences-V5

单例经过验证也会重新初始化

class GlobalContext {
  private constructor() {}
  private static instance: GlobalContext;
  private  num:number  = 0;
  private _objects = new Map<string, Object>();

  public static getContext(): GlobalContext {
    if (!GlobalContext.instance) {
      GlobalContext.instance = new GlobalContext();
      console.log("success打印成功")
    }
    return GlobalContext.instance;
  }

  getObject(value: string): Object | undefined {
    return this._objects.get(value);
  }

  setObject(key: string, objectClass: Object): void {
    this._objects.set(key, objectClass);
  }
  log(){
    this.num ++;
    console.log(`num:${this.num}`)
  }
}
export const  global = GlobalContext.getContext();
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.

log输出:

07-08 18:32:30.179   5621-5621    A03d00/JSAPP                   pid-5621              I     22222
07-08 18:32:30.180   5621-5621    A03d00/JSAPP                   pid-5621              I     22222
07-08 18:32:32.756   5621-5621    A03d00/JSAPP                   com.examp...lication  I     hsp:xxxxxx
07-08 18:32:32.756   5621-5621    A03d00/JSAPP                   com.examp...lication  I     num:1
07-08 18:32:38.461   5621-5621    A03d00/JSAPP                   com.examp...lication  I     har:xxxxxx
07-08 18:32:38.461   5621-5621    A03d00/JSAPP                   com.examp...lication  I     num:1
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
分享
微博
QQ
微信
回复
2024-12-23 16:30:50
相关问题
关于初始化EGL环境相关问题
2123浏览 • 1回复 待解决
HarmonyOS XComponent初始化
1095浏览 • 1回复 待解决
HarmonyOS struct初始化方法
962浏览 • 1回复 待解决
HarmonyOS 组件初始化参数
697浏览 • 1回复 待解决
HarmonyOS Component初始化问题
1463浏览 • 1回复 待解决
HarmonyOS 初始化EGL环境失败
886浏览 • 1回复 待解决
HarmonyOS 推送服务初始化失败
801浏览 • 1回复 待解决
HarmonyOS 应用RDB初始化示例
1224浏览 • 1回复 待解决
HarmonyOS export struct的初始化参数
1001浏览 • 1回复 待解决
HarmonyOS 怎么监听Web初始化完成?
946浏览 • 1回复 待解决
初始化安全相机的方法
1230浏览 • 1回复 待解决
怎么进行全局初始化操作?
307浏览 • 0回复 待解决
没法调试“已初始化”分支
979浏览 • 1回复 待解决