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


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 相关文章推荐
javascript eval和JSON之间的联系
Dec 31 Javascript
jquery中ajax调用json数据的使用说明
Mar 17 Javascript
clipboard.js无需Flash无需依赖任何JS库实现文本复制与剪切
Oct 10 Javascript
jquery把int类型转换成字符串类型的方法
Oct 07 Javascript
JavaScript 继承详解(六)
Oct 11 Javascript
Node.js学习入门
Jan 03 Javascript
JavaScript中常见的八个陷阱总结
Jun 28 Javascript
前端图片懒加载(lazyload)的实现方法(提高用户体验)
Aug 21 Javascript
ajax请求data遇到的问题分析
Jan 18 Javascript
JavaScript同源策略和跨域访问实例详解
Apr 03 Javascript
VUE 3D轮播图封装实现方法
Jul 03 Javascript
微信小程序语音同步智能识别的实现案例代码解析
May 29 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
session 的生命周期是多长
2006/10/09 PHP
PHP类继承 extends使用介绍
2014/01/14 PHP
为百度UE编辑器上传图片添加水印功能
2015/04/16 PHP
以实例全面讲解PHP中多进程编程的相关函数的使用
2015/08/18 PHP
Laravel 5.4因特殊字段太长导致migrations报错的解决
2017/10/22 PHP
微信推送功能实现方式图文详解
2019/07/12 PHP
在网页中控制wmplayer播放器
2006/07/01 Javascript
jquery图片延迟加载 前端开发技能必备系列
2012/06/18 Javascript
简单的代码实现jquery定时器
2014/01/03 Javascript
jQuery使用$.ajax提交表单完整实例
2015/12/11 Javascript
javascript瀑布流式图片懒加载实例解析与优化
2016/02/23 Javascript
select下拉框插件jquery.editable-select详解
2017/01/22 Javascript
高效的jQuery代码编写技巧总结
2017/02/22 Javascript
微信小程序之前台循环数据绑定
2017/08/18 Javascript
nodejs取得当前执行路径的方法
2018/05/13 NodeJs
js统计页面上每个标签的数量实例代码
2018/05/29 Javascript
用node撸一个监测复联4开售短信提醒的实现代码
2019/04/10 Javascript
浅谈react-router@4.0 使用方法和源码分析
2019/06/04 Javascript
详解element-ui级联菜单(城市三级联动菜单)和回显问题
2019/10/02 Javascript
使用Vue-cli3.0创建的项目 如何发布npm包
2019/10/10 Javascript
Vue v-for中的 input 或 select的值发生改变时触发事件操作
2020/08/31 Javascript
Array.filter中如何正确使用Async
2020/11/04 Javascript
在Linux上安装Python的Flask框架和创建第一个app实例的教程
2015/03/30 Python
Python对数据库操作
2016/03/28 Python
django.db.utils.ProgrammingError: (1146, u“Table‘’ doesn’t exist”)问题的解决
2018/07/13 Python
基于python3实现socket文件传输和校验
2018/07/28 Python
python获取服务器响应cookie的实例
2018/12/28 Python
老海军美国官网:Old Navy
2016/09/05 全球购物
美国室内盆栽植物购买网站:Plants.com
2020/04/24 全球购物
四年的大学生生活自我评价
2013/12/09 职场文书
自动化职业生涯规划书范文
2014/01/03 职场文书
干部考核评语
2014/04/29 职场文书
我的中国梦演讲稿500字
2014/08/19 职场文书
元旦趣味活动方案
2014/08/22 职场文书
2015自愿离婚协议书范本
2015/01/28 职场文书
2015年车间主任工作总结
2015/05/21 职场文书