HarmonyOS LocalStorage使用

官方关于LocalStorage的说明: https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V2/arkts-localstorage-0000001524537149-V2

说了些页面间,组建内关于LocalStorage的使用方法。这里就不再赘述。

但是关于如何在 UIAbility和 Page之间传递没有说。为啥我会这么问呢,因为我需要这么传:

javascript 复制代码
onWindowStageCreate(windowStage: window.WindowStage): void {
    windowStage.loadContent('pages/MainPage', localStorage);
  }

我需要把 UIAbility中的参数传递到第一个需要加载到页面中去,而且 windowStage.loadContent() 方法本来就可以传递一个 localStorage 的。

也就是如何将LocalStorage实例从UIAbility共享到一个或多个视图。

javascript 复制代码
export default class MainAbility extends UIAbility {

  localStorage = new LocalStorage();

  async onCreate(want: Want): Promise<void> {
    if (want?.uri != null && want.uri.length > 0) {
      let routePage = want.parameters?.['page'] as string;
      let routePageParam = want.parameters as Record<string, object>

      this.localStorage.clear()
      this.localStorage.setOrCreate('page', routePage)
      this.localStorage.setOrCreate('params', routePageParam)
    }
  }

  onWindowStageCreate(windowStage: window.WindowStage): void {
    windowStage.loadContent('pages/MainPage', this.localStorage);
  }
}

页面中:

javascript 复制代码
let storage = LocalStorage.getShared()
@Entry(storage)
@Component
struct MainPage {

  @State notificationState: string = ''
  private clickBackTimeRecord: number = 0;
  @LocalStorageProp('page') page: string = ''
  @LocalStorageProp('params') params: Record<string, object> = {}
}
相关推荐
yilylong33 分钟前
鸿蒙(Harmony)实现滑块验证码
华为·harmonyos·鸿蒙
baby_hua33 分钟前
HarmonyOS第一课——DevEco Studio的使用
华为·harmonyos
HarmonyOS_SDK1 小时前
融合虚拟与现实,AR Engine为用户提供沉浸式交互体验
harmonyos
- 羊羊不超越 -2 小时前
App渠道来源追踪方案全面分析(iOS/Android/鸿蒙)
android·ios·harmonyos
长弓三石4 小时前
鸿蒙网络编程系列44-仓颉版HttpRequest上传文件示例
前端·网络·华为·harmonyos·鸿蒙
SameX6 小时前
鸿蒙 Next 电商应用安全支付与密码保护实践
前端·harmonyos
SuperHeroWu77 小时前
【HarmonyOS】键盘遮挡输入框UI布局处理
华为·harmonyos·压缩·keyboard·键盘遮挡·抬起
sanzk11 小时前
华为鸿蒙应用开发
华为·harmonyos
SoraLuna16 小时前
「Mac畅玩鸿蒙与硬件28」UI互动应用篇5 - 滑动选择器实现
macos·ui·harmonyos
ClkLog-开源埋点用户分析17 小时前
ClkLog企业版(CDP)预售开启,更有鸿蒙SDK前来助力
华为·开源·开源软件·harmonyos