微信小程序缓存类

简介: 代码如下
// 缓存类
class Cache {
  // 构造方法 单位秒
  constructor({ expire = 3600 }) {
    // 成员属性  过期时间
    // 毫秒
    this.expire = new Date().getTime() + expire * 1000;
  }
  // 设置
  set(key, value) {
    let data = { expire: this.expire, value };
    // 设置缓存
    wx.setStorageSync(key, data);
  }
  // 永久
  forever(key, value) {
    let expire = new Date().getTime() + 9999999999 * 1000;
    let data = { expire, value };
    // 设置缓存
    wx.setStorageSync(key, data);
  }
  // 判断是否存在缓存
  has(key) {
    // 获取当前时间
    let time = new Date().getTime();
    // 缓存数据
    let data = wx.getStorageSync(key);
    if (data != '') {
      if (time > data.expire) {  // 缓存过期
        // 删除过期缓存
        wx.removeStorageSync(key);
        return false;
      }
      return true;
    }
    return false;
  }
  // 获取
  get(key) {
    if (this.has(key)) {
      return wx.getStorageSync(key).value;
    }
    return null;
  }
  // 删除
  del(key) {
    wx.removeStorageSync(key);
  }
}
export {Cache}
相关文章
|
2月前
|
小程序 前端开发 中间件
ThinkPHP 配置跨域请求,使用TP的内置跨域类配置,小程序和web网页跨域请求的区别及格式说明
本文介绍了如何在ThinkPHP框架中配置跨域请求,使用了TP内置的跨域类`\think\middleware\AllowCrossDomain::class`。文章还讨论了小程序和web网页在跨域请求格式上的区别,并提供了解决方案,包括修改跨域中间件源码以支持`Origin`和`token`。此外,还介绍了微信小程序跨域请求的示例和web网页前端发送Axios跨域请求的请求拦截器配置。
ThinkPHP 配置跨域请求,使用TP的内置跨域类配置,小程序和web网页跨域请求的区别及格式说明
|
1月前
|
缓存 开发框架 移动开发
uni-app:下载使用uni&创建项目&和小程序链接&数据缓存&小程序打包 (一)
uni-app 是一个跨平台的开发框架,它允许开发者使用 Vue.js 来构建应用程序,并能够同时发布到多个平台,如微信小程序、支付宝小程序、H5、App(通过DCloud的打包服务)等。uni-app 的目标是通过统一的代码库,简化多平台开发过程,提高开发效率。 在这一部分中,我们将逐步介绍如何下载和使用uni-app、创建一个新的项目、如何将项目链接到小程序,以及实现数据缓存的基本方法。
|
3月前
|
缓存 程序员
封装一个给 .NET Framework 用的内存缓存帮助类
封装一个给 .NET Framework 用的内存缓存帮助类
|
4月前
|
小程序
新闻电影资讯类小程序模板源码
新闻电影资讯类小程序模板源码
133 5
|
4月前
|
人工智能 小程序 搜索推荐
餐饮类小程序开发定制需要多少钱,费用是怎样的
餐饮小程序开发费用因需求、规模和复杂性而异。基础版约几千到万元,含菜品展示、在线点餐等功能;界面设计费几千到几万;服务器租赁年费几千到几万;维护更新费同水平。总成本通常在几万到几十万之间。选择开发商时要考虑实际需求、合同条款及付款方式。
|
4月前
|
设计模式 存储 缓存
Java面试题:结合单例模式与Java内存模型,设计一个线程安全的单例类?使用内存屏障与Java并发工具类,实现一个高效的并发缓存系统?结合观察者模式与Java并发框架,设计一个可扩展的事件处理系统
Java面试题:结合单例模式与Java内存模型,设计一个线程安全的单例类?使用内存屏障与Java并发工具类,实现一个高效的并发缓存系统?结合观察者模式与Java并发框架,设计一个可扩展的事件处理系统
39 0
|
6月前
|
存储 缓存 Java
探秘MyBatis缓存原理:Cache接口与实现类源码分析
探秘MyBatis缓存原理:Cache接口与实现类源码分析
108 2
探秘MyBatis缓存原理:Cache接口与实现类源码分析
|
6月前
|
小程序 前端开发 定位技术
微信小程序-常用的视图容器类组件
该内容是关于微信小程序组件的分类和部分具体组件的介绍。主要分为9大类:视图容器、基础内容、表单组件、导航组件、媒体组件、地图组件、画布组件、开放能力和无障碍访问。其中详细讲解了`view`、`scroll-view`、`swiper`及`swiper-item`等组件的用途和示例。`view`用于构建页面布局,`scroll-view`支持滚动效果,`swiper`则用于创建轮播图。此外,还提到了`root-portal`、`page-container`等其他特殊用途的组件。
78 0
|
6月前
|
存储 缓存 小程序
【微信小程序3】本地缓存:一次性存储多个对象值
【微信小程序3】本地缓存:一次性存储多个对象值
134 0
|
6月前
|
小程序 前端开发 定位技术
【微信小程序】-- 常用视图容器类组件介绍 -- view、scroll-view和swiper(六)
【微信小程序】-- 常用视图容器类组件介绍 -- view、scroll-view和swiper(六)