创建的单例换了页面后不生效问题
单例只有在同一个流程中才有效,换了页面后之前的实例都全是undefined。
HarmonyOS
赞
收藏 0
回答 3
待解决
相关问题
HarmonyOS Entry和Hsp中创建的单例失效
255浏览 • 1回复 待解决
在ets层能不能创建整个应用全局唯一的单例?
1657浏览 • 1回复 待解决
HarmonyOS 弹窗封装后open不生效
162浏览 • 1回复 待解决
请问当前页面跳转时是否支持单例模式
510浏览 • 1回复 待解决
HarmonyOS IjkMediaPlayer目前仅提供单例模式,是否可以支持创建多个?
264浏览 • 1回复 待解决
实现单例模式下的数据存储
773浏览 • 1回复 待解决
HarmonyOS 关于onKeyEvent不生效问题
105浏览 • 1回复 待解决
如何获取单例为undefined
266浏览 • 1回复 待解决
HarmonyOS 单例对象如何实现
217浏览 • 1回复 待解决
HAR包内的单例对象与HAR包相互之间依赖关系问题。
708浏览 • 1回复 待解决
HSP中,单例模式出现多份实例问题分析总结_2
650浏览 • 1回复 待解决
ArkTS层实例化与单例介绍
2082浏览 • 1回复 待解决
HarmonyOS 气泡提示popup设置popupColor不生效问题
425浏览 • 1回复 待解决
组合手势被抽离成方法后不生效
540浏览 • 1回复 待解决
HarmonyOS margin不生效
390浏览 • 1回复 待解决
HarmonyOS 如何在har类型的组件中定义单例
302浏览 • 1回复 待解决
HarmonyOS tabContent onPageShow 方法不生效,如何监听页面回到前台?
48浏览 • 1回复 待解决
ConstraintSize尺寸设置不生效
2158浏览 • 1回复 待解决
关于文档中说har中不能用单例的疑惑
1640浏览 • 1回复 待解决
首选项获取实例,实例是否为单例
1784浏览 • 1回复 待解决
textfield的截断属性不生效
2648浏览 • 1回复 待解决
HarmonyOS expandSafeArea不生效
72浏览 • 1回复 待解决
abiFilters配置不生效
204浏览 • 1回复 待解决
HAR包创建的page,使用window加载page的路径采用相对路径不生效
678浏览 • 1回复 待解决
Web组件的onKeyEvent键盘事件不生效
1866浏览 • 1回复 待解决
参考:https://blog.51cto.com/chenfenglove/11409106
对于每个Page都会生成一个js文件,定义的单例会在每个js中都生成一份,所以单例的作用范围只是Page的范围。
如果想共享一个实例,创建范围需要提升至UIAbility或者App级别。
单例模式是一种常见的设计模式,用于确保一个类只有一个实例,并提供一个全局访问点。然而,由于每个页面(Page)都会生成一个独立的JavaScript文件,在每个文件中定义的单例实例实际上是独立的,因此单例的作用范围仅限于单个页面(Page)的范围内。当在不同页面之间切换时,之前页面的单例实例将不再可用,导致所谓的“不生效”问题。
为了解决这个问题,开发者需要将单例的创建范围提升至更高的层级,如UIAbility或App级别。这样做可以确保单例实例在整个应用程序或至少在某个特定的UIAbility范围内是共享的,从而避免在不同页面之间切换时单例实例失效的问题。