【小程序】缓存

缓存

每一个微信小程序均可以有本身的本地缓存,能够经过 wx.setStorage/wx.setStorageSync、wx.getStorage/wx.getStorageSync、wx.clearStorage/wx.clearStorageSync,wx.removeStorage/wx.removeStorageSync 对本地缓存进行读写和清理。html

同一个微信用户,同一个小程序 storage 上限为 10MB。storage 以用户维度隔离,同一台设备上,A 用户没法读取到 B 用户的数据。前端

注意: 若是用户储存空间不足,咱们会清空最近最久未使用的小程序的本地缓存。咱们不建议将关键信息所有存在 storage,以防储存空间不足或用户换设备的状况。小程序

写入缓存

wx.setStorage(Object object)微信小程序

将数据存储在本地缓存中指定的 key 中。会覆盖掉原来该 key 对应的内容。数据存储生命周期跟小程序自己一致,即除用户主动删除或超过必定时间被自动清理,不然数据都一直可用。单个 key 容许存储的最大数据长度为 1MB,全部数据存储上限为 10MB。缓存

属性 类型 必填 说明
key string 本地缓存中指定的 key
data any 须要存储的内容。只支持原生类型、Date、及可以经过JSON.stringify序列化的对象。
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)
wx.setStorage({
  key: 'key', data: 'value' }) 

wx.setStorageSync(string key, any data)wx.setStorage 的同步版本微信

try { wx.setStorageSync('key', 'value') } catch (e) { } 



读取缓存

wx.getStorage(Object object)架构

从本地缓存中异步获取指定 key 的内容异步

属性 类型 必填 说明
key string 本地缓存中指定的 key
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)
wx.getStorage({
  key: 'key', success(res) { console.log(res.data) } }) 

any wx.getStorageSync(string key)wx.getStorage 的同步版本函数

try { const value = wx.getStorageSync('key') if (value) { // Do something with return value } } catch (e) { // Do something when catch error } 



清理缓存

wx.clearStorage(Object object)post

清理本地数据缓存

属性 类型 必填 说明
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)
wx.clearStorage()

wx.clearStorageSync():wx.clearStorage 的同步版本

try { wx.clearStorageSync() } catch (e) { // Do something when catch error } 



移除缓存

wx.removeStorage(Object object)

从本地缓存中移除指定 key

属性 类型 必填 说明
key string 本地缓存中指定的 key
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)
wx.removeStorage({
  key: 'key', success(res) { console.log(res.data) } }) 

wx.removeStorageSync(string key)wx.removeStorage 的同步版本

try { wx.removeStorageSync('key') } catch (e) { // Do something when catch error }

 

----------------------------------------

小程序系列:

  前言

  项目结构

  生命周期

  请求与封装

  数据绑定

  事件

  基础使用: component使用 、 wxs使用 、 节点操做 、 页面跳转 、 缓存

  前端架构浅谈

----------------------------------------