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


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修改属性值实例代码(设置属性值)
Jan 06 Javascript
控制台报错object is not a function的解决方法
Aug 24 Javascript
在JavaScript中重写jQuery对象的方法实例教程
Aug 25 Javascript
jquery判断复选框是否选中进行答题提示特效
Dec 10 Javascript
jQuery实现拖动效果的实例代码
Jun 25 jQuery
Express系列之multer上传的使用
Oct 27 Javascript
vue-better-scroll 的使用实例代码详解
Dec 03 Javascript
原生js实现移动端Touch轮播图的方法步骤
Jan 03 Javascript
详解JavaScript 新语法之Class 的私有属性与私有方法
Apr 23 Javascript
vue动态循环出的多个select出现过的变为disabled(实例代码)
Nov 10 Javascript
js 获取扫码枪输入数据的方法
Jun 10 Javascript
vue-quill-editor的使用及个性化定制操作
Aug 04 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图片处理类 phpThumb参数用法介绍
2012/03/11 PHP
php过滤html中的其他网站链接的方法(域名白名单功能)
2014/04/24 PHP
PHP读取CURL模拟登录时生成Cookie文件的方法
2014/11/04 PHP
LAMP环境使用Composer安装Laravel的方法
2017/03/25 PHP
IE7提供XMLHttpRequest对象为兼容
2007/03/08 Javascript
对YUI扩展的Gird组件 Part-2
2007/03/10 Javascript
原创javascript小游戏实现代码
2010/08/19 Javascript
js 中{},[]中括号,大括号使用详解
2011/05/12 Javascript
动态加载外部javascript文件的函数代码分享
2011/07/28 Javascript
常规表格多表头查询示例
2014/02/21 Javascript
ECMAScript 6即将带给我们新的数组操作方法前瞻
2015/01/06 Javascript
javascript上下方向键控制表格行选中并高亮显示的方法
2015/02/13 Javascript
bootstrap布局中input输入框右侧图标点击功能
2016/05/16 Javascript
详解JSON1:使用TSQL查询数据和更新JSON数据
2016/11/21 Javascript
JavaScript中关于for循环删除数组元素内容时出现的问题
2016/11/21 Javascript
微信小程序 增、删、改、查操作实例详解
2017/01/13 Javascript
JS生成一维码(条形码)功能示例
2017/01/19 Javascript
JavaScript中附件预览功能实现详解(推荐)
2017/08/15 Javascript
javascript获取指定区间范围随机数的方法
2017/09/08 Javascript
使用 vue 实现灭霸打响指英雄消失的效果附demo
2019/05/06 Javascript
vue实现文件上传读取及下载功能
2020/11/17 Javascript
[01:00:25]NB vs Secret 2018国际邀请赛小组赛BO1 B组加赛 8.19
2018/08/21 DOTA
Python2.6版本中实现字典推导 PEP 274(Dict Comprehensions)
2015/04/28 Python
python多线程调用exit无法退出的解决方法
2019/02/18 Python
python中执行smtplib失败的处理方法
2020/07/01 Python
纯CSS实现设置半个字符的样式
2014/07/03 HTML / CSS
Joules官网:女士、男士和儿童服装和鞋类
2018/10/23 全球购物
NYX Professional Makeup俄罗斯官网:世界知名的化妆品品牌
2019/12/26 全球购物
Java模拟试题
2014/11/10 面试题
俄语翻译实习生的自我评价分享
2013/11/06 职场文书
简历的自我评价范文
2014/02/04 职场文书
禁毒宣传标语
2014/06/19 职场文书
法人授权委托书公证范本
2014/09/14 职场文书
银行求职信范文
2019/05/13 职场文书
Redis三种集群模式详解
2021/10/05 Redis
3050和2060哪个好 性能差多少 差距有多大 谁更有性价比
2022/06/17 数码科技