• Lv0
    粉丝0

积分1 / 贡献0

提问1答案被采纳0文章0

作者动态

    stage模型如何设置和使用全局变量,如何将tcp实例全局化

    2045130652 显示全部楼层 发表于 2023-12-22 13:50:43

    如题,请问一下stage模型如何设置和使用全局变量,如何将tcp实例全局化

    您尚未登录,无法参与评论,登录后可以:
    参与开源共建问题交流
    认同或收藏高质量问答
    获取积分成为开源共建先驱

    精彩评论3

    深开鸿_王石

    沙发 发表于 2023-12-22 18:07:47
    自己搞个类,然后export出来给别人用呢?

    mean

    板凳 发表于 2023-12-22 18:08:27

    stage模型如何设置和使用全局变量,如何将tcp实例全局化


    export 导出对象
    import 导入对象

    示例:定义一个全局的GlobalContext对象
    定义并且export 导出对象
    1. export class GlobalContext {
    2.   private constructor() {
    3.   }

    4.   private static instance: GlobalContext;
    5.   private _objects = new Map<string, Object>();

    6.   public static getContext(): GlobalContext {
    7.     if (!GlobalContext.instance) {
    8.       GlobalContext.instance = new GlobalContext();
    9.     }
    10.     return GlobalContext.instance;
    11.   }

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

    15.   setObject(key: string, objectClass: Object): void {
    16.     this._objects.set(key, objectClass);
    17.   }
    18. }
    复制代码
    import 对象并且设置对象的值
    1. import { GlobalContext } from './GlobalContext';
    2.    
    3.     GlobalContext.getContext().setObject("context", this.context);
    4.     GlobalContext.getContext().setObject("cacheDir", this.context.cacheDir);
    复制代码

    其他使用到的地方import导入对象
    1. import { GlobalContext } from '../GlobalContext';
    2.       let cacheDir: string = GlobalContext.getContext().getObject("cacheDir") as string
    复制代码

    马迪

    发表于 2023-12-23 09:10  IP属地: - 中国江苏省扬州市 中国电信IDC

    回复 mean: 之前的版本有globalThis,现在已经去掉了,上面这个方式应该是可以的

    【1 条回复】

    Copyright   ©2023  OpenHarmony开发者论坛  京ICP备2020036654号-3 |技术支持 Discuz!

    返回顶部