唯品秀前端博客
当前位置: 前端开发 > Js前端框架 > 【已解决】微信小程序缓存时间有效期设置

【已解决】微信小程序缓存时间有效期设置

2018-07-13 分类:Js前端框架 作者:管理员 阅读(7574)

大家做小程序开发时间是不是遇到很蛋疼一个问题就是没有cookie可用,只能用getStorageSync那套东西,这就意味着你不好处理缓存的有效时间问题,最近我困扰了许久,最后整理出个思路,一起来看看吧。

思路说明

通过利用时间戳方式,在设置缓存key的时候,值直接给到它有效时间对应的时间戳,比如今天是2018/7/13/9:48,那么设置有效时间三天,那就是2018/7/16/9:48,如下代码

1
2
3
4
5
6
7
module.exports = {
  set: function(k, v, time) {
    var effTime = parseInt(Date.parse(new Date())) + 86400000 * time; //有效时期时间戳
    wx.setStorageSync(k, v ? v : effTime);
  }
};
//86400000 就是一天等于多少毫秒

然后在使用时候判断当前时间戳是不是小于缓存的时间戳,这样就知道当前key这个变量是不是有效的,当然,更多功能想法你还可以自己扩展,思路就是这样,没毛病

1
2
3
4
 // 点击推送通知按钮设置7天有效时间缓存
  openNotice: function() {
    Storage.set('oldStorTime', '', 7);
  }
1
2
3
4
5
6
7
8
onLoad:function(){
     var currentTime = Date.parse(new Date()); //当前时间戳
     if (currentTime < wx.getStorageSync('oldStorTime')) {
       //console.log("缓存时间有效")
     } else {
      //console.log("缓存时间已过期")
     }
}

提示:这个时间获取的当然就是你手机的本地时间。很显然,你不应该仅仅依靠前端的缓存时间做活动倒计时,又或者签到打卡等等功能,尤其涉及金钱类(在此不得不吐槽我们公司后端人员,把前端本地存储功能当半个数据库,很多变量依靠前端直接存储在用户客户端,他们就不进行校验)。所以你在开发调试时候只需要改变你手机的本地时间即可进行真机测试。

「三年博客,如果觉得我的文章对您有用,请帮助本站成长」

赞(12) 打赏

谢谢你请我吃鸡腿*^_^*

支付宝
微信
12

谢谢你请我吃鸡腿*^_^*

支付宝
微信

上一篇:

下一篇:

你可能感兴趣

0 条评论关于"【已解决】微信小程序缓存时间有效期设置"

博客简介

唯品秀博客: weipxiu.com,一个关注Web前端开发技术、关注用户体验、坚持更多原创实战教程的个人网站,愿景:成为宇宙中最具有代表性的前端博客,期待您的参与,主题源码 

精彩评论

  • 江吟辞(2周前 (06-29))

    好难坚持啊,我还没毕业,不知道啥时候才能像您一样厉害

    评:碎言碎语
  • 和我、恋爱吧(2周前 (06-29))

    怎么没见你更新呢,比较忙吗

    评:碎言碎语
  • 游离(2周前 (06-29))

    站主,你好!请教一下,前台的pc 端和移动端,你是怎么实现响应式的呢?媒体查询的同时写两套样...

    评:碎言碎语
  • 권지용(2周前 (06-29))

    最近在学习前端,看了博主很多文章,收益匪浅,感谢大佬

    评:碎言碎语
  • 白君也(2周前 (06-28))

    哇 自己制作的吗 在哪学的技术啊 好厉害

    评:碎言碎语
  • 管理员(4周前 (06-16))

    时间区间问题,因为目前是2020年,你所选不可能超出这个时间吧,当然,代码是根据你的业务来,...

    评:js时间戳完美转换成阴历农历格式

友情链接

他们同样是一群网虫,却不是每天泡在网上游走在淘宝和网游之间、刷着本来就快要透支的信用卡。他们或许没有踏出国门一步,但同学却不局限在一国一校,而是遍及全球!申请交换友链

站点统计

  • 文章总数: 258 篇
  • 草稿数目: 0 篇
  • 分类数目: 16 个
  • 独立页面: 6 个
  • 评论总数: 906 条
  • 链接总数: 17 个
  • 标签总数: 459 个
  • 注册用户: 8220 人
  • 访问总量: 9222488 次
  • 最近更新: 2020年7月3日
服务热线:
 173xxxx7240

 QQ在线交流

 旺旺在线