HarmonyOS 鸿蒙Next 全局对象globalThis的使用

HarmonyOS 鸿蒙Next中配置全局对象可以使用globalThis,globalThis是 ArkTS 引擎实例内部的一个全局对象,在该引擎实例下所有的 AbilityExtensionAbilityPage 都可以访问并使用它,因此可以通过 globalThis 绑定属性或方法来进行数据同步,以 Stage 模型为例 globalThis 的作用域如下图所示

1704852718135.png

globalThis全局绑定值

EntryAbility.ts设置值

 onWindowStageCreate(windowStage: window.WindowStage): void {
    globalThis.globalParams={
      "site":"www.baidu.com",
      "name":"鸿蒙实战"
    }
    ...
 }

其他页面获取值

Text(`${JSON.stringify(globalThis.globalParams)}`).fontSize(22)

globalThis不同页面传值

 Button("打开第二页")
        .onClick(() => {
          globalThis.indexParams = { // 给 globalThis 赋予新属性indexParams
            "name": "ArkUI实战",
            "site": "www.itying.com"
          }
          router.pushUrl({           // 打开第二页
            url: "pages/main"
          })
})
 Text(JSON.stringify(globalThis.indexParams)) // 直接使用globalThis.indexParams的值
        .fontSize(22)
        .fontWeight(FontWeight.Bold)

更多关于HarmonyOS 鸿蒙Next 全局对象globalThis的使用的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于HarmonyOS 鸿蒙Next 全局对象globalThis的使用的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


globalThis是 ArkTS 引擎实例内部的一个全局对象,在该引擎实例下所有的 Ability、ExtensionAbility、Page 都可以访问并使用它,因此可以通过 globalThis 绑定属性或方法来进行数据同步

用法简单: 设置值

      "site":"www.itying.com",
      "name":"鸿蒙globalThis实战"
    }

获取值

	globalThis.indexParams
回到顶部