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

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

每一个微信小程序都可以有自己的本地缓存,可以通过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();

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

 

posted @ 2018-03-01 17:31  帅到要去报警  阅读(517)  评论(0编辑  收藏  举报