小程序使用缓存setStorageSync和getStorage来设置缓存和读取缓存数据(踩坑记录)

前言:网上的教程好复杂好乱,没有把简要的东西概括出来,摸索了好多文章却最终靠自己的小测试解决了这个问题。记录以下次使用,分享给大家。

这是在获取到请求数据时,把请求到的数据写入缓存的操作

success(res) {
     var info = res.data.data;
     wx.setStorageSync(
       'history',          
       {
       acount: info.acount,
       add_time: info.add_time,
       id: info.id,
       last_time: info.last_time,
       phone: info.phone,
       teacher_name: info.teacher_name,
       wx_img: info.wx_img,
       wxacount: info.wxacount
       }
     )
  }

使用缓存的位置这样写

wx.getStorage({
      key: 'history',
      success(res) {
        console.log('我是缓存数据',res)
      }
    })

在使用缓存位置看到的效果图(PS:名字遮住了):
小程序使用缓存setStorageSync和getStorage来设置缓存和读取缓存数据(踩坑记录)_第1张图片

结尾:我是在测试使用wx.setStorageSync(key, data)的时候成功了,并且启发自己传入一堆数据的。

二次踩坑:关于同步异步的问题

接收部分写成这种形式才可以获取到数据,原因是因为异步的方法只在success里面才能执行,同步没有success,当执行到这个函数的时候,不会像异步那样跳过函数后到最后再实现,同步执行后可以马上得到我们想要的返回数据。

    var storageData = wx.getStorageSync('history');
    console.log('storageData', storageData.id);
    this.setData({
      tid: storageData.id
    });

你可能感兴趣的:(小程序开发记录)