自学内容网 自学内容网

十、应用级变量的状态变量

UIAbility内状态-LocalStorage

LocalStorage是页面级的UI状态存储,是针对UIAbility的状态共享,一个UIAbility有多个页面,这些页面通过@Entry 装饰器接收到对应参数, 都可以通过 LocalStorage 共享数据。

LocalStorage 也可以在 同一个UIAbility 内,页面间共享状态。

装饰器@LocalStorageProp

:::success
用法

  • 创建 LocalStorage 实例:
    • const storage = new LocalStorage({ key: value })
    • 设置给@Entry的参数:@Entry(storage)
  • 单向 **@LocalStorageProp('user')** 类似于@Prop,

:::

装饰器@LocalstorageLink

:::success
用法

  • 创建 LocalStorage 实例:
    • const storage = new LocalStorage({ key: value })
    • 设置给@Entry的参数:@Entry(storage)
  • 双向 **@LocalStorageLink('user')** 类似于@Link,全局均可变

:::

在页面内使用示例

import { router } from '@kit.ArkUI'

export class UserInfo {
  name: string = ''
  age: number = 0
}

let userData: Record<string, UserInfo> = {
  'user': {
    name: 'jack',
    age: 18
  }
}
//1.创建 LocalStorage 实例
export const storage = new LocalStorage(userData)
//2.设置给@Entry参数
@Entry(storage)
@Component
struct Index {
  //3.单向
  @LocalStorageProp('user')
  user: UserI

原文地址:https://blog.csdn.net/XLM20000629/article/details/144385019

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!