微信小程序 --- 缓存数据

Posted 帅到要去报警

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信小程序 --- 缓存数据相关的知识,希望对你有一定的参考价值。

保存数据  /  读取数据  /  删除数据  /  数据异步操作

每一个微信小程序都可以有自己的本地缓存,可以通过wx.setStorage( wx.setStorageSync) ,wx.getStorage(wx.getStorageSync),wx。clearStorage(wx.clearStorageSync) 可以对本地缓存进行设置 / 获取和清理。
本地缓存最大为 10MB ;

...Sync 是同步的接口;不带这个的是一个异步的接口;

注意:localStorage 是永久存储的,但是我们不建议将关键信息全部存在 localStorage,以防用户换设备的情况。

例如:app.js 里面的同步缓存日志

示例:异步缓存

onLoad:function(){
    wx.setStorage({
        key:\'testKey\',
        data:\'张三\'
    })
}

注意:使用 wx.setStorage 只能缓存一个数据:不能写多个:

// 错误示例 只能缓存 onOff这个数据
wx.setStorage({ 
    key:\'is_login\',
    data:\'true\',
    key:\'onOff\',
    data:\'false\'
});

当需要缓存多个数据的时候:使用缓存对象的方法

// 缓存对象
var currentObj = {\'is_login\':true,\'onOff\':false};
wx.setStorage({
    key:\'currentObj\',
    data:currentObj
});

获取缓存的数据

wx.getStorage(object):异步获取指定 key 的内容。

wx.getStorage({
  key: \'key\',
  success: function(res) {
      console.log(res.data)
  } 
})

wx.getStorageSyne(object):同步获取指定 key 的内容

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

 

查看:在控制台的 Storage

删除和清除缓存:

wx.removeStorage();
wx.clearStorage();

异步更好,但是同步更安全。

 

以上是关于微信小程序 --- 缓存数据的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序入门(七):缓存数据-单条数据

微信小程序怎么进行数据缓存

微信小程序json数据如何处理?

【微信小程序】本地缓存

缓存问题之异步处理(微信小程序)

微信小程序缓存用户密码及轮播