详解微信小程序缓存--缓存时效性


Posted in Javascript onMay 02, 2019

关于本地缓存

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;

}

}

以上所述是小编给大家介绍的微信小程序缓存时效性详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jquery 查找iframe父级页面元素的实现代码
Aug 28 Javascript
ajax的hide隐藏问题解决方法
Dec 11 Javascript
js关于字符长度限制的问题示例探讨
Jan 24 Javascript
为JS扩展Array.prototype.indexOf引发的问题及解决办法
Jan 21 Javascript
jquery实现平滑的二级下拉菜单效果
Aug 26 Javascript
JS实现的不规则TAB选项卡效果代码
Sep 18 Javascript
JS+CSS实现仿支付宝菜单选中效果代码
Sep 25 Javascript
关于javascript中限定时间内防止按钮重复点击的思路详解
Aug 16 Javascript
jQuery 控制文本框自动缩小字体填充
Jun 16 jQuery
Angular 2父子组件数据传递之@Input和@Output详解(下)
Jul 05 Javascript
JS原型和原型链原理与用法实例详解
Feb 05 Javascript
Vue的双向数据绑定实现原理解析
Feb 17 Javascript
详解如何使用router-link对象方式传递参数?
May 02 #Javascript
详解Vue底部导航栏组件
May 02 #Javascript
微信小程序搭建自己的Https服务器
May 02 #Javascript
Node.js中Koa2在控制台输出请求日志的方法示例
May 02 #Javascript
详解微信小程序网络请求接口封装实例
May 02 #Javascript
vue 搭建后台系统模块化开发详解
May 01 #Javascript
vue.js 2.*项目环境搭建、运行、打包发布的详细步骤
May 01 #Javascript
You might like
PHP数组排序之sort、asort与ksort用法实例
2014/09/08 PHP
PHP抽奖算法程序代码分享
2015/10/08 PHP
php+ajax无刷新上传图片实例代码
2015/11/17 PHP
php 截取GBK文档某个位置开始的n个字符方法
2017/03/08 PHP
php删除数组指定元素实现代码
2017/05/03 PHP
JS验证身份证有效性示例
2013/10/11 Javascript
JS获取html对象的几种方式介绍
2013/12/05 Javascript
使用时间戳解决ie缓存的问题
2014/08/20 Javascript
Nodejs极简入门教程(二):定时器
2014/10/25 NodeJs
Backbone.js 0.9.2 源码注释中文翻译版
2015/06/25 Javascript
JavaScript的jQuery库中ready方法的学习教程
2015/08/14 Javascript
基于JavaScript判断浏览器到底是关闭还是刷新(超准确)
2016/02/01 Javascript
JavaScript驾驭网页-DOM
2016/03/24 Javascript
JavaScript数组实现数据结构中的队列与堆栈
2016/05/26 Javascript
JS实现简单的tab切换选项卡效果
2016/09/21 Javascript
thinkphp标签实现bootsrtap轮播carousel实例代码
2017/02/19 Javascript
解决vue-cli中stylus无法使用的问题方法
2017/06/19 Javascript
简单的Vue SSR的示例代码
2018/01/12 Javascript
vue-cli项目无法用本机IP访问的解决方法
2018/09/20 Javascript
微信小程序自定义波浪组件使用方法详解
2019/09/21 Javascript
[04:23]DOTA2上海特锦赛小组赛第一日 TOP10精彩集锦
2016/02/27 DOTA
php使用递归与迭代实现快速排序示例
2014/01/23 Python
Python高级应用实例对比:高效计算大文件中的最长行的长度
2014/06/08 Python
tensorflow训练中出现nan问题的解决
2018/02/10 Python
python面向对象入门教程之从代码复用开始(一)
2018/12/11 Python
flask框架蓝图和子域名配置详解
2020/01/25 Python
美国职棒大联盟官方网上商店:MLBShop.com
2017/11/12 全球购物
流行文化收藏品:Sideshow(DC漫画,星球大战,漫威)
2019/03/17 全球购物
澳大利亚在线奢侈品时尚零售平台:Azura Runway
2021/01/13 全球购物
体育专业自荐书
2014/05/29 职场文书
竞聘报告优秀范文
2014/11/06 职场文书
2015年纪检监察工作总结
2015/04/08 职场文书
志愿者服务活动总结报告
2015/05/06 职场文书
2015年大班保育员工作总结
2015/05/18 职场文书
优秀的商业计划书,让融资一步到位
2019/05/07 职场文书
Python实现学生管理系统(面向对象版)
2021/06/24 Python