HarmonyOS LocalStorage.getShared()问题

自定义model类中某个方法调LocalStorage.getShared(),偶发出现获取值为undefined的情况,导致后续流程异常。

HarmonyOS
2024-09-30 16:11:08
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

LocalStorage是页面级存储,getShared接口仅能获取当前Stage通过windowStage.loadContent传入的LocalStorage实例,否则返回undefined。例子可见将LocalStorage实例从UIAbility共享到一个或多个视图。示例:

//Ability  
storage: LocalStorage = new LocalStorage(this.para);  
onWindowStageCreate(windowStage:window.WindowStage)  
{  
  windowStage.loadContent('pages/Index', this.storage);  
}
// PageA.ets  
// 通过getShared接口获取stage共享的LocalStorage实例  
let storage = LocalStorage.getShared()  
@Entry(storage)  
@Component  
struct PageA {  
  @LocalStorageLink('PropA') propA: number = 1;  
  build() {  
    Row() {  
      Column() {  
        Text(`${this.propA}`)  
      }  
    }  
  }  
}
// PageB.ets  
let storage = LocalStorage.getShared()  
@Entry(storage)  
@Component  
struct PageB {  
  @LocalStorageLink('PropA') propA: number = 2;  
  build() {  
    Row() {  
      Column() {  
        Button("Change propA")  
          .onClick(() => {  
            this.propA = 100;  
          })  
      }  
    }  
  }  
}

相关文档:

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-localstorage-V5?catalogVersion=V5

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-state-management-V5#getshared10

分享
微博
QQ
微信
回复
2024-09-30 17:36:06
相关问题
HarmonyOS LocalStorage.getShared出现undefind
278浏览 • 1回复 待解决
Localstorage与AppStorage区别
2052浏览 • 1回复 待解决
LocalStorage有大小限制吗
1696浏览 • 1回复 待解决
HarmonyOS Web组件使用localStorage报错
612浏览 • 1回复 待解决
HarmonyOS webview h5的localstorage
417浏览 • 1回复 待解决
如何操作web的localstorage
193浏览 • 1回复 待解决
LocalStorage什么时候被释放?
383浏览 • 1回复 待解决
如何在Navigation中使用LocalStorage
447浏览 • 1回复 待解决
web组件不支持localstorage
815浏览 • 1回复 待解决
如何实现对LocalStorage的实时监听?
516浏览 • 1回复 待解决
LocalStorage和AppStorage有什么区别?
907浏览 • 2回复 待解决
Web组件是否支持浏览器的localstorage
918浏览 • 1回复 待解决
#鸿蒙学习大百科#什么是LocalStorage
241浏览 • 1回复 待解决