当前位置: 首页 > news >正文

西部数码网站管理软件建站系统cms

西部数码网站管理软件,建站系统cms,中企动力做的网站怎么样,公积金网站怎么做增员1、定义CacheManage类,有set和get方法 class CacheManage {set() {},get() {} }set用来设置缓存,get用来获取缓存 2、完善set业务逻辑 大概逻辑如下: 1、将接收params参数,包含key、data、unit、time key 缓存字段,…

1、定义CacheManage类,有set和get方法

class CacheManage {set() {},get() {}
}

set用来设置缓存,get用来获取缓存

2、完善set业务逻辑

大概逻辑如下:
1、将接收params参数,包含key、data、unit、time

key 缓存字段,必填
data 缓存数据,必填
unit 缓存时间单位,有效值 day hours minutes; 默认 day
time 缓存有效期,默认 0 (无过期时间)

2、判断key和data不能为空,防止设置缓存时出错
3、判断unit参数,分别处理缓存过期时间
4、判断缓存size是否超上限,并及时清除
5、设置缓存,并以’|'字符分割过期时间戳
6、实现代码如下:

 set(params) {let { key, data, unit='day', time=0 } = params// 过期时间let expirationTime = 0if (key && data) {let storageInfo = uni.getStorageInfoSync()if(storageInfo.limitSize - storageInfo.currentSize < 5) {uni.clearStorageSync()}if(time === 0) { // 缓存不会失效uni.setStorageSync(key, data)// uni.setStorage({ key, data })return}if(unit === 'day') { // 缓存失效时间以天为单位let seconds = 3600 * 24 * timelet nowTime = Date.parse(new Date()) / 1000;expirationTime = nowTime + Number(seconds);}else if(unit === 'hours') { // 缓存失效时间以小时为单位let date = new Date()let _hour = date.getHours()date.setHours(_hour + time)expirationTime = Date.parse(date)/1000}else if(unit === 'minutes') { // 缓存失效时间以分钟为单位let date = new Date()let _min = date.getMinutes()date.setMinutes(_min+time)expirationTime = Date.parse(date)/1000}uni.setStorageSync(key, JSON.stringify(data) + '|' + expirationTime)}}

3、完善get逻辑

大概逻辑如下:
1、将接收要获取的缓存key
2、判断key不能为空
3、获取缓存
4、获取当前的时间戳,与缓存时间错比较,以判断缓存是否过期
5、获取指定缓存key,判断数据类型,分别返回
实现代码如下:

get(key) {if (key) {let nowTime = Date.parse(new Date()) / 1000;let data= uni.getStorageSync(key);if (data) {if(typeof(data) == 'string') {let temp = data.split('|')if (temp[1] && temp[1] <= nowTime) {// 缓存已过期,删除缓存数据uni.removeStorageSync(key)return '';} else {// 处理有效缓存数据if(temp[1]) {return JSON.parse(temp[0]);}else {return temp[0];}}}else {// 如果不是字符串,直接返回return data}}return '';}
}

4、导出类

export default new CacheManage()

如果觉得有用随手点个赞吧,谢谢
关注我,不定时分享技术干货~

http://www.hkea.cn/news/154024/

相关文章:

  • b2b外贸营销型网站如何做电商赚钱
  • 建设无障碍网站seo分析报告怎么写
  • 电子商务网站开发进什么科目模板自助建站
  • 威海市住房和城乡建设局官方网站北京seo营销公司
  • 开网页卡优化关键词排名工具
  • wordpress右侧文章归档东莞公司seo优化
  • 个人网站建设需求说明书免费外链生成器
  • 湖南网站建设的公司排名网页制作网站制作
  • 公司网页网站建设 ppt模板app开发公司排行榜
  • 网站开发yuanmus联合早报 即时消息
  • 为什么只有中国人怕疫情seo 页面
  • 网站开发总结报告十大门户网站
  • 临淄信息港发布信息临沂seo建站
  • 门户网站系统介绍企业推广哪个平台好
  • 免费网站建站排行榜网站策划报告
  • 网站设计的评估最近发生的热点新闻
  • 设建网站广告投放渠道
  • 日ip5000的网站怎么做如何提高网站在搜索引擎中的排名
  • 网站描文本链接怎么做深圳互联网营销
  • 一个服务器做两个网站自己做网站
  • 百草味网站建设的活动方案营销型企业网站有哪些
  • 论文课程网站 建设背景项目推广方式有哪些
  • 内部网站建设关键词优化推广策略
  • 一个公司可以做几个网站备案贵阳网络推广排名
  • 武汉高端网站建设免费广告网
  • 大理建网站常用于网站推广的营销手段是
  • js怎么做网站跨境电商网站
  • 台州外贸网站建设百度推广费用多少
  • 虚拟机怎么做网站空间培训班管理系统 免费
  • wordpress离线文章发布郑州seo关键词排名优化