随风飘扬

微信小程序数据缓存wx.setStorgaeSync(key, value)优化

只传入key为读取缓存,传入value为设置缓存,传入expire为设置缓存有效期

  cache: function (key, value, expire){
    if (typeof(value) == 'undefined') { //若未传入value,则读取缓存
      if (wx.getStorageSync('cached_time_' + key) && wx.getStorageSync('cached_time_' + key) < Date.parse(new Date()) / 1000 - wx.getStorageSync('expire_' + key)) {//若缓存有时间设置,并且缓存存在时间已超过所设置的有效期,则清除缓存。
        wx.removeStorageSync(key)
        wx.removeStorageSync('expire_' + key)
        wx.removeStorageSync('cached_time_' + key)
      }
      return wx.getStorageSync(key)
    } else {
      if (typeof (expire) == 'undefined') { //若传入value但未设置expire,则缓存永久有效
        wx.setStorageSync(key, value)
      } else {//否则设置缓存有效期标志位
        wx.setStorageSync(key, value)
        wx.setStorageSync('expire_' + key, expire)
        wx.setStorageSync('cached_time_' + key, Date.parse(new Date()) / 1000)
      }
    }
  }

转载请注明: 随风飘扬 » 微信小程序数据缓存wx.setStorgaeSync(key, value)优化


登录后可评论,点击前往登陆

评论列表