關於緩存,舉個示例,假定我不是通過微信授權登錄的方式,小程序又是如何識別我登錄后的身份呢???
效果圖:

這個功能我是通過緩存實現的。
關鍵核心代碼如下:
wx.setStorage({ key: 'userName', data: res.data.user.userName })
微信小程序提供的主要緩存如圖:

那么兩個緩存之間的區別又是什么?
wx.setStorage(Object object)
將數據存儲在本地緩存中指定的 key 中。會覆蓋掉原來該 key 對應的內容。除非用戶主動刪除或因存儲空間原因被系統清理,否則數據都一直可用。單個 key 允許存儲的最大數據長度為 1MB,所有數據存儲上限為 10MB。
wx.setStorageSync(string key, any data)
wx.setStorage 的同步版本
如果要說它們之間區別,那就是同步和異步之間的區別,異步不必等待當前任務執行結束,就可以直接執行下一步任務,而同步則必須等待當前任務執行完畢,才能執行下一步任務。
那么既然我緩存了之后,請問如何獲取呢?
核心代碼如下:
manage.js
/** * 頁面的初始數據 */ data: { userName: wx.getStorageSync('userName'), userInfo: {} }
另外大家有沒有聯想到redis或者memcached的鍵值獲取呢,與其是不是很相似。
參考資料如下:
微信小程序之數據緩存
