微信小程序> 微信小程序设置缓存的时效以及读取缓存

微信小程序设置缓存的时效以及读取缓存

浏览量:1865 时间: 来源:风雪夜过客

因公司发展需要,本人也踩进微信小程序的坑了,爬坑是一个艰辛的过程,现将遇到的部分问题记录一下。

小程序官方API提供了wx.setStorageSync,不过是永久缓存,除非用户手动清除,否则会一直留在用户手机 。而我们都知道,本地缓存最大为10M。实际开发过程中,或者为了给用户节省内存,或者为了设置信息即时性,我们需要对部分缓存设置时效性,在他到期之后删除。相关代码如下:

 //设置时效缓存,time为有效时间,单位小时,默认24小时var postfix = '_deadtime';setStorageSync: function (k, v, time){wx.setStorageSync(k, v);var t=time?time:24;var seconds = parseInt(t * 3600);if (seconds > 0) {var timestamp = Date.parse(new Date());timestamp = timestamp / 1000 + seconds;wx.setStorageSync(k + postfix, timestamp + "")} else {wx.removeStorageSync(k + postfix)}},
//读取缓存,若缓存不存在,返回def,若没有设置默认返回值,则返回undefinedgetStorageSync:function(k,def){var deadtime = parseInt(wx.getStorageSync(k + postfix))if (deadtime) {if (parseInt(deadtime) < Date.parse(new Date()) / 1000) {wx.removeStorageSync(k);wx.removeStorageSync(k + postfix);if (def) { return def; } else { return; }}}var res = wx.getStorageSync(k);if (res) {return res;} else if(def){return def;}else{return;}}



版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

最新资讯

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎