關(guān)于本地緩存
1.wx.setStorage(wx.setStorageSync)、wx.getStorage(wx.getStorageSync)、wx.clearStorage(wx.clearStorageSync)可以對(duì)本地緩存進(jìn)行設(shè)置、獲取和清理。本地緩存最大為10MB
2.localStorage 是永久存儲(chǔ)
相應(yīng)的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的具體使用詳見(jiàn)官方文檔
注意:這里又一個(gè)問(wèn)題就是這些緩存不清理會(huì)永久的緩存----------然而實(shí)際開(kāi)發(fā)中,我們往往需要設(shè)置一些緩存的時(shí)效性
所以就需要對(duì)這些api進(jìn)行封裝(二次開(kāi)發(fā))直接上代碼
設(shè)置緩存-----------put(key, val, time) time為可選參數(shù)表示有效時(shí)間(單位:秒)
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為可選參數(shù),表示無(wú)緩存數(shù)據(jù)時(shí)返回值(支持字符串、json、數(shù)組、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;}}以上所述是小編給大家介紹的微信小程序緩存時(shí)效性詳解整合,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)VEVB武林網(wǎng)網(wǎng)站的支持!
新聞熱點(diǎn)
疑難解答
圖片精選