1.设置缓存
2.获枯猜取缓存
3.清除缓存
每个微信小程序都可以有自己的本地早锋缓存,可以通过 wx.setStorag(wx.setStorageSync)、wx.getStorage(wx.getStorageSync)、wx.clearStorage(wx.clearStorageSync)可以对本地缓存进行设置、获取和清理。本地缓存最大为10MB。注意:
localStorage 是永久存储的,但是我们不建议将关键信息全部存在 localStorage,以防用户换设备的情况。
wx.setStorage(OBJECT)将数据存储在本地缓存中指定的 key 中,会覆盖掉原来该陆弯晌 key 对应的内容,这是一个异步接口。
代码示例
wx.setStorage({ key:"key" data:"value" })1234
wx.setStorageSync(KEY,DATA)
将 data 存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个同步接口。
try { wx.setStorageSync('key', 'value') } catch (e) { }1234
wx.getStorageInfo(OBJECT)
异步获取当前storage的相关信息
wx.getStorageInfo({ success: function(res) { console.log(res.keys) console.log(res.currentSize) console.log(res.limitSize) } })1234567
wx.getStorageInfoSync
同步获取当前storage的相关信息
try { var res = wx.getStorageInfoSync() console.log(res.keys) console.log(res.currentSize) console.log(res.limitSize) } catch (e) { // Do something when catch error }12345678
wx.removeStorage(OBJECT)
从本地缓存中异步移除指定 key 。
wx.removeStorage({ key: 'key', success: function(res) { console.log(res.data) } })123456
wx.removeStorageSync(KEY)
从本地缓存中同步移除指定 key 。 try { wx.removeStorageSync('key') } catch (e) { // Do something when catch error }123456
wx.clearStorage()
清理本地数据缓存。
wx.clearStorage()1
wx.clearStorageSync()
同步清理闹谨本地数据缓存
try { wx.clearStorageSync() } catch(e) { // Do something when catch error }
近期公司的小程序有个需求,就是要把列表页的图片缓存在本地,下次在打开的时候就不用从网络进行请求了,因为用户的网络不是很好;
想法是先把图片缓存起来,然后把图片的路径和订单编号保存在storage里面;
用订单编号进行对比,id相同的话就把网络路径替换成差李本地缓存路径;
检查缓存里面之前有没有存这张照片,有的话就直接赋配稿值,没有的话就先缓存,然后把路径和订单号存起来,再赋值
如果有新的要替换,就把最前面的给删除了
查阅了官方文档,发现可缓存可以存200MB;
所以先决定给缓存前十张试试水
返回的列表数据是数组里面套对培庆孝象,图片地址为reserve4
在util.js里面写
然后在请求数据的地方调用这个方法
时间紧迫写的比较粗糙,用于记录。如果有什么地方写的不好或者有bug的请大家指出,谢谢。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)