公司网站建设youyi51,微信导航网站怎么做,深圳附近做个商城网站多少钱,单页设计多少钱系列文章目录
1.HarmonyOS | 状态管理(一) | State装饰器 2.HarmonyOS | 状态管理(二) | Prop装饰器 3.HarmonyOS | 状态管理(三) | Link装饰器 4.HarmonyOS | 状态管理(四) | Provide和Consume装饰器 5.HarmonyOS | 状态管理(五) | Observed装饰器和ObjectLink装饰器 6.Harmo…系列文章目录
1.HarmonyOS | 状态管理(一) | State装饰器 2.HarmonyOS | 状态管理(二) | Prop装饰器 3.HarmonyOS | 状态管理(三) | Link装饰器 4.HarmonyOS | 状态管理(四) | Provide和Consume装饰器 5.HarmonyOS | 状态管理(五) | Observed装饰器和ObjectLink装饰器 6.HarmonyOS | 状态管理(六) | LocalStorage(页面级UI状态存储) 文章目录 系列文章目录前言一、AppStorage 是什么二、AppStorage关联的两个装饰器1.StorageProp2.StorageLink 三、总结 前言
上一篇文章讲解了页面级状态存储本篇文章我们来看看应用级状态存储。 一、AppStorage 是什么
AppStorage是应用全局的UI状态存储是和应用的进程绑定的由UI框架在应用程序启动时创建为应用程序UI状态属性提供中央存储。
二、AppStorage关联的两个装饰器
StorageProp:StorageProp(key) 和AppStorage中key对应的属性建立单向数据同步 StorageLink:StorageLink(key) 和AppStorage中key对应的属性建立双向数据同步
1.StorageProp
AppStorage.SetOrCreate(Prop,60)Entry
Component
struct StoragePropPage {StorageProp(Prop) storagePropOne: number 1;build() {Column({ space: 15 }) {// 点击后从60开始加1只改变当前组件显示的storagePropOne不会同步到AppStorage中Button(Parent from AppStorage ${this.storagePropOne}).onClick(() this.storagePropOne 1)ChildStorageProp()}}
}Component
struct ChildStorageProp {// LocalStorageProp变量装饰器与LocalStorage中的Prop属性建立单向绑定StorageProp(Prop) storagePropTwo: number 2;build(){Column({ space: 15 }) {// 当StoragePropPage改变时当前storagePropTwo不会改变显示60Text(Parent from AppStorage ${this.storagePropTwo})}}
}2.StorageLink
AppStorage.SetOrCreate(PropA, 50)Entry
Component
struct StorageLinkPage {StorageLink(PropA) storageLink:number 1build() {Column({ space: 20 }) {Text(From AppStorage ${this.storageLink}).onClick(() this.storageLink 1)}}
}三、总结 AppStorage 是应用全局的UI状态存储。 StorageProp(key) 和AppStorage中key对应的属性建立单向数据同步。 StorageLink(key) 和AppStorage中key对应的属性建立双向数据同步。