微信小程序开发相关收集

微信缓存

2018-12-04  本文已影响4人  小小小魔仙

知识点1:
微信缓存是指将数据存储在本地缓存中指定的 key 中。 这个key原有的内容会被覆盖。
单个 key 允许存储的最大数据长度为 1MB,所有数据存储上限为 10MB。

知识点2: 本地缓存数据分为同步和异步两种。同步方法有成功回调函数,表示数据处理成功后的操作。

操作 异步方法 同步方法
插入 wx.setStorage wx.setStorageSync
读取 wx.getStorage wx.getStorageSync
删除 wx.removeStorage wx.removeStorageSync
清空 wx.clearStorage wx.clearStorageSync
获取缓存信息 wx.getStorageInfo wx.getStorageInfoSync

以Sync结尾都是同步方法。

知识点3: 同步方法和异步方法的区别是:
*同步方法会堵塞当前任务,直到同步方法处理返回。
*异步方法不会塞当前任务。

代码测试:
1.先调用异步方法,再调用同步方法.

  saveMsg () {
      console.log('save start')
      wx.setStorage({
        key: 'nancy',
        data: '01',
        success: (res) => {
          console.log('异步保存成功', res)
        }
      })
      wx.setStorageSync('nancy2', '02')
      console.log('同步保存成功')
    }
image.png

可以看到,异步方法不会阻挡同步方法的进行.

2.先调用同步方法,再调用异步方法.

  saveMsg () {
      console.log('save start')
      wx.setStorageSync('nancy2', '02')
      console.log('同步保存成功')
      wx.setStorage({
        key: 'nancy',
        data: '01',
        success: (res) => {
          console.log('异步保存成功', res)
        }
      })
    },
image.png
同步会阻塞, 异步方法只有等到同步方法执行成功才能执行。

知识点4: 缓存隔离级别

知识点5: 数据存储生命周期跟小程序本身一致,即除用户主动删除或超过一定时间被自动清理,否则数据都一直可用。
参考资料:
官方文档-wx.setStorage
官方文档-wx.setStorageSync

上一篇 下一篇

猜你喜欢

热点阅读