1. 首页
  2. 微信小程序

微信小程序数据存储长时间缓存数据,数据存储本地

安卓和小程序体验

小程序体验

微信小程序数据存储长时间缓存数据,数据存储本地

安卓版本体验 安卓体验download

数据存储
使用场景
许多时候我们需要将用户的数据保存到本地,以便以后的调用。比如说openid,如果每次打开小程序都需要发送code到后台解析成出openid,对资源消耗还是比较大的。这个时候数据缓存就派上了用场。

两种数据缓存
1.wx.setStorageSync(string key, any data)
2.wx.setStorage(Object object)
两种都可以实现缓存数据,区别就在于同步和异步

以Sync(同步,同时)结尾的都是都是同步缓存,二者的区别是,异步不会阻塞当前任务,同步缓存直到同步方法处理完才能继续往下执行。
通俗点说,异步就是不管保没保存成功,程序都会继续往下执行.同步是等保存成功了,才会执行下面的代码.
使用异步,性能会更好;而使用同步,数据会更安全
一般都使用同步,异步是为了用户体验的情况而选择,同步相对简单。

wx.setStorageSync(string key, any data)

wx.setStorage 的同步版本

参数

string key

本地缓存中指定的 key

any data

需要存储的内容。只支持原生类型、Date、及能够通过JSON.stringify序列化的对象。

示例代码

wx.setStorage({
  key:"key",
  data:"value"
})
try {
  wx.setStorageSync('key', 'value')
} catch (e) { }

wx.setStorage(Object object)

将数据存储在本地缓存中指定的 key 中。会覆盖掉原来该 key 对应的内容。除非用户主动删除或因存储空间原因被系统清理,否则数据都一直可用。单个 key 允许存储的最大数据长度为 1MB,所有数据存储上限为 10MB。

参数

Object object

属性 类型 默认值 必填 说明
key string 本地缓存中指定的 key
data any 需要存储的内容。只支持原生类型、Date、及能够通过JSON.stringify序列化的对象。
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码

wx.setStorage({
  key:"key",
  data:"value"
})
try {
  wx.setStorageSync('key', 'value')
} catch (e) { }

原创文章,作者:程序员凯小白,如若转载,请注明出处:http://www.kaixiaobai.com/archives/580

发表评论

登录后才能评论

联系我们

qq

在线咨询:点击这里给我发消息

邮件:1298646637@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息