LocalStorage是頁面級(jí)的UI狀態(tài)存儲(chǔ),通過@Entry裝飾器接收的參數(shù)可以在頁面內(nèi)共享同一個(gè)LocalStorage實(shí)例,LocalStorage也可以在UIAbility內(nèi),頁面間共享狀態(tài) ## 1.2 LocalStorage單個(gè)頁面的使用方法 ### 1.2.1 單個(gè)頁面的數(shù)據(jù)狀態(tài)存儲(chǔ)方法 1. 準(zhǔn)備一個(gè)共享數(shù)據(jù),鍵值對(duì)的方式存儲(chǔ) 2. 創(chuàng)建LocalStorage實(shí)例:const storage = new LocalStorage({key:value}) 3. 單向 @LocalStorageProp(‘user’)組件內(nèi)可變 4. 雙向 #LocalStorageLink(‘" />

日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

harmony OS NEXT-UIAbility內(nèi)狀態(tài)-LocalStorage詳細(xì)介紹

程奕紅 ? 來源:jf_34770892 ? 作者:jf_34770892 ? 2025-03-22 15:09 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

# 鴻蒙Harmony-UIAbility內(nèi)狀態(tài)-LocalStorage詳細(xì)介紹

## 1.1 Localstorage的概念

> LocalStorage是頁面級(jí)的UI狀態(tài)存儲(chǔ),通過@Entry裝飾器接收的參數(shù)可以在頁面內(nèi)共享同一個(gè)LocalStorage實(shí)例,LocalStorage也可以在UIAbility內(nèi),頁面間共享狀態(tài)

## 1.2 LocalStorage單個(gè)頁面的使用方法

### 1.2.1 單個(gè)頁面的數(shù)據(jù)狀態(tài)存儲(chǔ)方法

1. 準(zhǔn)備一個(gè)共享數(shù)據(jù),鍵值對(duì)的方式存儲(chǔ)

2. 創(chuàng)建LocalStorage實(shí)例:const storage = new LocalStorage({key:value})
3. 單向 @LocalStorageProp(‘user’)組件內(nèi)可變
4. 雙向 #LocalStorageLink(‘user’)全局均可變

### 1.2.2 案例演示

1. 準(zhǔn)備共享數(shù)據(jù)

```ts
const data:Record = {
'uname':'公孫離',
'age':'18'
}

```

2. 創(chuàng)建一個(gè)storage實(shí)例

```ts
const storage = new LocalStorage(data)
```

3. 使用共享數(shù)據(jù)庫

```ts
1.@Entry(storage)
//表示我要從共享數(shù)據(jù)庫中取出uname字段 具體需要取出什么字段根據(jù)自己需求即可
@LocalStorageLink('uname')
//給取出的字段取一個(gè)別名,需要賦初始值。因?yàn)榭赡苣貌坏?br /> message: string = ''
```

4. 具體代碼實(shí)現(xiàn)

```ts
const data:Record = {
'uname':'公孫離',
'age':'18'
}
const storage = new LocalStorage(data)
@Entry(storage)
@Component
struct TestLocalStorage03 {
@LocalStorageLink('uname')
message:string = ''

build() {
Column() {
Text(this.message)
Button('改變父組件的信息')
.onClick(()=>{
this.message = '孫尚香'
})
child001()
}
.height('100%')
.width('100%')
}
}

@Component
struct child001 {
@LocalStorageLink('uname')
message:string = ''
build() {
Column(){
Text('-------------------------------------------')

Text(this.message)
Button('改變子組件的狀態(tài)')
.onClick(()=>{
this.message = '西施'
})
}
}
}
```

### 1.2.3 效果展示

![img](https://i-blog.csdnimg.cn/img_convert/537a479a23bb8f24ff1538c9aaeb76e0.gif)

##

## 1.3 LocalStorage多個(gè)頁面共享UIAbility的使用方法

### 1.3.1 多個(gè)頁面的使用方法

1. 依舊是準(zhǔn)備共享數(shù)據(jù),放置在設(shè)置當(dāng)前應(yīng)用的加載頁面(UIAbility共享),只要是當(dāng)前windowstage內(nèi)的界面,都可以共享這份數(shù)據(jù)
2. 在設(shè)置應(yīng)用的加載頁面創(chuàng)建storage實(shí)例
3. 通過LocalStorage里面的方法getShared獲取數(shù)據(jù)

### 1.3.2 案例演示

1. 準(zhǔn)備數(shù)據(jù)

```ts
const data:Record = {
'uname':'公孫離',
'age':'18',
}
const storage = new LocalStorage(data)
```

2. 創(chuàng)建storage實(shí)例,將storage傳遞給頁面

```ts
1.const storage = new LocalStorage(data)
2. windowStage.loadContent('pages/10/TestLocalStorage03',storage);
```

3. 接收數(shù)據(jù)

```ts
const storage = LocalStorage.getShared()
//其他步驟同單個(gè)頁面?zhèn)鬏攩?,這里就不再敘述
```

4. 完整代碼展示

* UIAbility內(nèi)代碼

```ts
onWindowStageCreate(windowStage: window.WindowStage): void {
const data:Record = {
'uname':'公孫離',
'age':'18',
}
const storage = new LocalStorage(data)
// //只要是當(dāng)前windowStage內(nèi)的界面,都可以共享這份數(shù)據(jù)
windowStage.loadContent('pages/10/TestLocalStorage03',storage);
}
```

* 頁面1

```ts
// const data:Record = {
import { router } from '@kit.ArkUI'

// 'uname':'公孫離',
// 'age':'18'
// }
const storage = LocalStorage.getShared()

@Entry(storage)
@Component
struct TestLocalStorage03 {
@LocalStorageLink('uname')
message: string = ''

build() {
Column() {
Text(this.message)
Button('改變父組件的信息')
.onClick(() => {
this.message = '孫尚香'
})
child001()

}
.height('100%')
.width('100%')
}
}

@Component
struct child001 {
@LocalStorageLink('uname')
message: string = ''

build() {
Column() {
Text('-------------------------------------------')

Text(this.message)
Button('改變子組件的狀態(tài)')
.onClick(() => {
this.message = '西施'
})
Button('切換頁面')
.onClick(() => {
router.pushUrl({
url: 'pages/10/TextLocalStorage2'
})
})
}
}
}
```

* 頁面2

```ts
import { router } from '@kit.ArkUI'

const storage = LocalStorage.getShared()
@Entry(storage)
@Component
struct TextLocalStorage2 {
@LocalStorageLink('uname')
message: string = ''

build() {
Column() {
Text(this.message)
Button('改變信息')
.onClick(()=>{
this.message = '劉備'
})

Button('back')
.onClick(()=>{
router.back()
})
}
.height('100%')
.width('100%')
}
}
```


審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 存儲(chǔ)
    +關(guān)注

    關(guān)注

    13

    文章

    4901

    瀏覽量

    90331
  • 鴻蒙
    +關(guān)注

    關(guān)注

    60

    文章

    3037

    瀏覽量

    46210
  • Harmony
    +關(guān)注

    關(guān)注

    0

    文章

    108

    瀏覽量

    3619
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    東芝開發(fā)出可詳細(xì)闡明磁頭內(nèi)自旋扭矩振蕩元件振蕩狀態(tài)的評(píng)估方法

    東芝集團(tuán)(“東芝”)近日宣布,針對(duì)有望進(jìn)一步實(shí)現(xiàn)硬盤大容量化的下一代技術(shù)——共振型微波輔助磁記錄(MAS-MAMR),東芝成功開發(fā)出可詳細(xì)闡明磁頭內(nèi)“自旋扭矩振蕩元件”(以下簡稱STO)振蕩狀態(tài)
    的頭像 發(fā)表于 02-12 15:13 ?787次閱讀
    東芝開發(fā)出可<b class='flag-5'>詳細(xì)</b>闡明磁頭<b class='flag-5'>內(nèi)</b>自旋扭矩振蕩元件振蕩<b class='flag-5'>狀態(tài)</b>的評(píng)估方法

    【HarmonyOS 5】鴻蒙中的UIAbility詳解(二)

    【HarmonyOS 5】鴻蒙中的UIAbility詳解(二) ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##鴻蒙金融類應(yīng)用 (金融理財(cái)# 一、前言 今天我們繼續(xù)深入講解
    的頭像 發(fā)表于 07-11 18:17 ?1052次閱讀
    【HarmonyOS 5】鴻蒙中的<b class='flag-5'>UIAbility</b>詳解(二)

    【匯思博SEEK100開發(fā)板試用體驗(yàn)】07 天氣app--用戶偏好設(shè)置+加載狀態(tài)等細(xì)節(jié)完善

    1 前言 本次實(shí)驗(yàn)將上次沒完成的設(shè)置頁面做一個(gè)完善,然后使用preferences用戶首選項(xiàng)保存host 和 apikey,然后完善一點(diǎn)細(xì)節(jié),包括加載狀態(tài)顯示、啟動(dòng)應(yīng)用自動(dòng)獲取數(shù)據(jù)、Toast提示
    發(fā)表于 07-09 17:42

    harmony-utils之CacheUtil,緩存工具類

    harmony-utils之CacheUtil,緩存工具類
    的頭像 發(fā)表于 07-04 16:36 ?635次閱讀

    harmony-utils之CharUtil,字符工具類

    harmony-utils之CharUtil,字符工具類
    的頭像 發(fā)表于 07-04 16:34 ?608次閱讀

    harmony-utils之DeviceUtil,設(shè)備相關(guān)工具類

    harmony-utils之DeviceUtil,設(shè)備相關(guān)工具類
    的頭像 發(fā)表于 07-03 18:27 ?793次閱讀

    harmony-utils之DisplayUtil,屏幕相關(guān)工具類

    harmony-utils之DisplayUtil,屏幕相關(guān)工具類
    的頭像 發(fā)表于 07-03 18:26 ?620次閱讀

    【HarmonyOS 5】鴻蒙中的UIAbility詳解(三)

    【HarmonyOS 5】鴻蒙中的UIAbility詳解(三) ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##鴻蒙金融類應(yīng)用 (金融理財(cái)# 一、前言 本文是鴻蒙中的UIAbility
    的頭像 發(fā)表于 06-14 22:32 ?907次閱讀

    鴻蒙Next實(shí)現(xiàn)瀑布流布局

    的應(yīng)用窗口寬度并注冊(cè)回調(diào)函數(shù)監(jiān)聽窗口尺寸變化。將窗口尺寸的長度單位由 px 換算為 vp 后,即可基于前文中介紹的規(guī)則得到當(dāng)前斷點(diǎn)值,此時(shí)可以使用狀態(tài)變量記錄當(dāng)前的斷點(diǎn)值方便后續(xù)
    發(fā)表于 06-10 14:17

    PageAbility切換為UIAbility的方法

    UIAbility。 將FA應(yīng)用中PageAbility的代碼遷移到新創(chuàng)建的UIAbility中。FA應(yīng)用中PageAbility和Stage應(yīng)用中的UIAbility生命周期基本一致,兩者的生命周期
    發(fā)表于 06-05 06:07

    UIAbility組件生命周期介紹

    UIAbility組件生命周期 概述 當(dāng)用戶打開、切換和返回到對(duì)應(yīng)應(yīng)用時(shí),應(yīng)用中的UIAbility實(shí)例會(huì)在其生命周期的不同狀態(tài)之間轉(zhuǎn)換。UIAbility類提供了一系列回調(diào),通過
    發(fā)表于 05-16 08:28

    UIAbility組件基本用法說明

    UIAbilityContext可以獲取UIAbility的相關(guān)配置信息,如包代碼路徑、Bundle名稱、Ability名稱和應(yīng)用程序需要的環(huán)境狀態(tài)等屬性信息,以及可以獲取操作UIAbility實(shí)例的方法(如
    發(fā)表于 05-16 06:32

    UIAbility組件間交互(設(shè)備內(nèi))說明

    UIAbility,也可以是其他應(yīng)用的UIAbility(例如啟動(dòng)三方支付UIAbility)。 本文將從如下場(chǎng)景分別介紹設(shè)備內(nèi)
    發(fā)表于 05-16 06:12

    UIAbility組件啟動(dòng)模式:實(shí)例在啟動(dòng)時(shí)的不同呈現(xiàn)狀態(tài)

    UIAbility組件啟動(dòng)模式 UIAbility的啟動(dòng)模式是指UIAbility實(shí)例在啟動(dòng)時(shí)的不同呈現(xiàn)狀態(tài)。針對(duì)不同的業(yè)務(wù)場(chǎng)景,系統(tǒng)提供了三種啟動(dòng)模式: singleton(單實(shí)
    發(fā)表于 05-16 06:10

    UIAbility組件與UI的數(shù)據(jù)同步介紹

    數(shù)據(jù)的情況;而LocalStorage則是一個(gè)局部的狀態(tài)管理器,適用于單個(gè)UIAbility內(nèi)部使用的狀態(tài)數(shù)據(jù)。通過這兩種方案,開發(fā)者可以更加靈活地控制應(yīng)用
    發(fā)表于 05-16 06:10
    交城县| 胶南市| 肥乡县| 福州市| 丰都县| 常熟市| 丘北县| 刚察县| 岳阳县| 江山市| 获嘉县| 清远市| 阜南县| 明溪县| 光泽县| 樟树市| 寿光市| 苏州市| 东兰县| 从化市| 白山市| 达日县| 蓬莱市| 阳新县| 秦皇岛市| 郎溪县| 靖远县| 碌曲县| 睢宁县| 和平县| 贡嘎县| 驻马店市| 从江县| 卢氏县| 岫岩| 阿克苏市| 合川市| 呼玛县| 钟祥市| 桂平市| 文山县|