您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關微信小程序緩之緩存時效性的示例分析,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
關于本地緩存
1.wx.setStorage(wx.setStorageSync)、wx.getStorage(wx.getStorageSync)、wx.clearStorage(wx.clearStorageSync)可以對本地緩存進行設置、獲取和清理。本地緩存最大為10MB
2.localStorage 是永久存儲
相應的api----------
wx.setStorage(OBJECT)
wx.getStorage(OBJECT)
wx.getStorageInfo(OBJECT)
wx.removeStorage(OBJECT)
wx.setStorageSync(KEY,DATA)
wx.getStorageSync(KEY)
wx.getStorageInfoSync
wx.clearStorage()
wx.clearStorageSync() ...
Api的具體使用詳見官方文檔
注意:這里又一個問題就是這些緩存不清理會永久的緩存----------然而實際開發中,我們往往需要設置一些緩存的時效性
所以就需要對這些api進行封裝(二次開發)直接上代碼
設置緩存-----------put(key, val, time) time為可選參數表示有效時間(單位:秒)
function put(key, val, time) { wx.setStorageSync(key, val) var seconds = parseInt(time); if (seconds > 0) { var timestamp = Date.parse(new Date()); timestamp = timestamp / 1000 + seconds; wx.setStorageSync(k + 'dtime', timestamp + "") } else { wx.removeStorageSync(k + 'dtime') } }
讀取緩存-----get(key, def)-------def為可選參數,表示無緩存數據時返回值(支持字符串、json、數組、boolean等等)
function get(key, def) { var deadtime = parseInt(wx.getStorageSync(key+ 'dtime')) if (deadtime) { if (parseInt(deadtime) < Date.parse(new Date()) /1000) { if (def) { return def; }else { return; } } } var res = wx.getStorageSync(key); if (res) { return res; } else { return def; } }
關于“微信小程序緩之緩存時效性的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。