❶ 微信小程序開發——本地緩存
本地緩存是指微信小程序存儲在當前設備空間里地數據。在官方文檔說明中,其所有的數據存儲上限為10MB即單個小程序的存儲空間上限為10MB。==在使用過程中用戶使用本地緩存可以存儲一些非重要性的生產操作,例如讓小程序再次打開能快速渲染頁面,減少用戶等待時間。
小程序提供了讀寫刪本地緩存的方法:
關於同步緩存和非同步緩存的區別
非同步與同步的區別是,非同步不會阻塞當前任務,同步緩存直到同步方法處理完才能繼續往下執行。
寫入本地緩存
根據key讀取本地緩存
根據key移除本地緩存
清除本地所有緩存
最後,還要注意的一點是如果寫入了同樣key的緩存數據,後寫的會覆蓋了前者,因此需要我們注意一下
❷ 小程序之緩存
每個微信小程序都可以有自己的本地緩存,可以通過 wx.setStorage(wx.setStorageSync)、wx.getStorage(wx.getStorageSync)、wx.clearStorage(wx.clearStorageSync)可以對本地緩存進行設置、獲取和清理。同一個微信用戶,同一個小程序 storage 上限為 10MB。localStorage 以用戶維度隔離,同一台設備上,A 用戶無法讀取到 B 用戶的數據。
1.設置緩存
2.獲取緩存
3.清除緩存
❸ 緩存問題之非同步處理(微信小程序)
微信小程序裡面的本地緩存
wx.setStorage(wx.setStorageSync)、wx.getStorage(wx.getStorageSync)、wx.clearStorage(wx.clearStorageSync)
localStorage :是永久存儲,以用戶維度隔離,同一台設備上,A 用戶無法讀取到 B 用戶的數據。
在小程序中無 Sync 結尾的本地緩存中,都為 非同步緩存
wx.setStorage(object)
參數object說明
控制台
表示儲存成功
wx.getStorage(object)
示例
這個key值就是先前setStorage的命名key,證明指定獲取那個緩存中的數據
wx.clearStorage(object)
清理本地數據緩存
將之前儲存在Storage中的數據清空。適用於退出登錄後登錄信息的清除
wx.getStorageInfo(object)
非同步獲取當前storage的相關信息( 當前小程序裡面所有的storage的儲存信息 )
參數說明
執行結果
wx.removeStorage(OBJECT)
從本地緩存中非同步移除指定 key值
獲取當前data值時將報錯undefined
執行結果
❹ 微信小程序storage緩存同步方法和非同步方法的區別
插入 wx.setStorage wx.setStorageSync
讀取 wx.getStorage wx.getStorageSync
刪除 wx.removeStorage wx.removeStorageSync
清空 wx.clearStorage wx.clearStorageSync
獲取緩存信息 wx.getStorageInfo wx.getStorageInfoSync
以Sync結尾都是同步方法。同步方法和非同步方法的區別是:
同步方法會堵塞當前任務,直到同步方法處理返回。
非同步方法不會塞當前任務。
❺ 微信小程序入門(七):緩存數據-單條數據
微信小程序的編寫中,涉及到有些業務場景需要將數據緩存到本地,則微信小程序api提供了兩個介面函數,
wx.setStorage可以將數據緩存在本地指定的key中,如果本地緩存已經存在指定的key,則會覆蓋該key對應的內容,這是一個非同步的介面,在調用時會涉及到成功,失敗,完成三個狀態,
與wx.setStorage唯一不同的就是wx.setStorageSync是同步進行的,所以不會涉及到成功,失敗,完成等回調,但是在使用時需要使用try.......catch....來捕獲異常;
現在編寫一個將字元串緩存本地的例子
編譯項目,點擊緩存按鈕:
現在改變緩存的內容,但是緩存的key保持不變
可以看到第二次的內容把第一次覆蓋了。
將內容緩存到本地之後,將其從本地提取展示出來,則可是使用微信小程序api提供的兩個介面:wx.getStorageInfo(Object object),wx.getStorageSync(string key),與緩存同樣,讀取緩存也分同步和非同步;
我們將剛剛存儲到本地的數據展示到頁面上:
編譯項目,點擊按鈕獲取緩存數據並將其展示到頁面上。
完成了本地數據的緩存,獲取,則接下來就是關於緩存數據的清除,同樣微信小程序api也提供了可使用的介面,
至此微信小程序本地保存數據就此結束!
❻ 微信小程序的全局變數跟數據緩存的區別,用什麼比較好
緩存就是類似資料庫,全局變數就是所有頁面都能用,這是兩個東西,比如說新聞應用,首頁的數據需要放到緩存里,然後下次訪問首頁的時候直接載入緩存的數據,然後在非同步調用介面刷新數據,這樣在進入首頁的時候就不需要loading了,直接能看到數據,感覺就是秒開,用戶體驗更好一些,全局變數就是類似用戶登錄信息,登錄之後設置成全局的,每個頁面都可以使用,不然跳轉後就需要每次都重新獲取用戶信息