如何在app.ets中定义全局对象(全局变量、方法),又如何在其它ets文件中获取并应用它?

我是小白,请大家帮帮我。

在app.js中定义了对象,可以在自定义js文件中通过getApp()获取app.js中暴露的对象。

问题:在app.ets下,如标题,如何实现呢?

另外,当app.ets中全局变量的值改变时,其它引用的界面会自动刷新吗?如何做到?

鸿蒙
全局变量
应用
2022-07-18 16:35:29
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Franced
3

FA模型使用globalThis能够实现全局变量共享。使用参考:

app.ets中:

onCreate() {
    console.info('Application onCreate')
    globalThis.msg = 'test'
  },

 index.ets

@Entry
@Component
struct Index {
  @State message: string = ''

  aboutToAppear(){
    this.message = globalThis.msg
  }

  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
      }
      .width('100%')
    }
    .height('100%')
  }
}
分享
微博
QQ
微信
回复
2022-07-19 14:16:03
相关问题
如何在Shadow DOM应用全局样式?
22浏览 • 0回复 待解决
如何在普通ets文件获取上下文Context
1002浏览 • 1回复 待解决
HarmonyOS 如何简单使用全局变量
155浏览 • 1回复 待解决
如何实现类的全局变量
188浏览 • 1回复 待解决
HarmonyOS ets文件全局引用
411浏览 • 1回复 待解决
如何在ets引入zlib.js?
2481浏览 • 1回复 待解决
ets文件怎么调用ts文件定义方法
2886浏览 • 1回复 待解决
HarmonyOS 如何在全局使用loading组件?
424浏览 • 1回复 待解决
如何在ArkTS合并对象
913浏览 • 1回复 待解决
如何在ArkTS合并对象
1354浏览 • 1回复 待解决
如何在全局实现一个自定义dialog弹窗
2720浏览 • 1回复 待解决
如何在js文件引入自定义js文件
7677浏览 • 1回复 待解决
如何在HAR获取targetname?
39浏览 • 1回复 待解决
如何在UI获取UIAbilityContext
2395浏览 • 1回复 待解决
如何在page获取WindowStage
689浏览 • 1回复 待解决
如何在UI获取Context
2840浏览 • 1回复 待解决