开源鸿蒙 PersistentStorage
PersistentStorage
ArkUI provides some static methods in the PersistentStorage class for managing persistent data of applications. Persistent data with specific tags can be linked to the AppStorage, and then the persistent data can be accessed through the AppStorage APIs. Alternatively, the @StorageLink decorator can be used to access the variable of the specific key.
Name | Type | Return Value | Definition |
---|---|---|---|
PersistProp | key : string defaultValue: T |
void | Changes the associated named attribute to persistent data in the AppStorage. The value overwriting sequence is as follows: - If the attribute exists in the AppStorage, use it to overwrite the value in Persistent. - If Persistent contains the specified attribute, use the attribute value in Persistent. - If the preceding conditions are not met, use defaultValue. The values null and undefined are not supported. |
DeleteProp | key: string | void | Cancels two-way binding. The value of this attribute will be deleted from the persistent storage. |
PersistProps | keys: { key: string, defaultValue: any }[] |
void | Associates multiple named attribute bindings. |
Keys | void | Array <string> | Returns the flags of all persistent attributes. |
NOTE: - When using PersistProp, ensure that the input key exists in the AppStorage.
- DeleteProp takes effect only for the data that has been linked during the current startup.
PersistentStorage.PersistProp("highScore", "0");
@Entry
@Component
struct PersistentComponent {
@StorageLink('highScore') highScore: string = '0'
@State currentScore: number = 0
build() {
Column() {
if (this.currentScore === Number(this.highScore)) {
Text(`new highScore : ${this.highScore}`)
}
Button() {
Text(`goal!, currentScore : ${this.currentScore}`)
.fontSize(10)
}.onClick(() => {
this.currentScore++
if (this.currentScore > Number(this.highScore)) {
this.highScore = this.currentScore.toString()
}
})
}
}
}
你可能感兴趣的文章
开源鸿蒙 Multi-Language Capability
0
赞
- 所属分类: 后端技术
- 本文标签:
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦