关于微信小程序根据本地缓存的是否存在来判定其他页面是否存在

此博客已整体转至http://yayar.top/2017/05/18/%E5%85%B3%E4%BA%8E%E5%BE%AE%E4%BF%A1%E5%B0%8F%E7%A8%8B%E5%BA%8F%E6%A0%B9%E6%8D%AE%E6%9C%AC%E5%9C%B0%E7%BC%93%E5%AD%98%E7%9A%84%E6%98%AF%E5%90%A6%E5%AD%98%E5%9C%A8%E6%9D%A5%E5%88%A4%E5%AE%9A%E5%85%B6%E4%BB%96%E9%A1%B5%E9%9D%A2%E6%98%AF%E5%90%A6%E5%AD%98%E5%9C%A8/#more
微信小程序的本地缓存的获取以及清除,保存可以说是每个玩小程序的人必须接触的.
昨天领导给我一个任务,借助微信第三方获取用户的信息,当用户第一次登陆时,会获取用户的信息,并让其完成附加的认证,然后存在本地.用户下次登录时就不需完成认证.废话不说,先上代码

// pages/login/login.js
Page({
  data: {
    // mo为动态添加关联验证的display属性
    mo: ''
  },
  onLoad: function () {
    // value为获取的本地信息
    var value = wx.getStorageSync('key')
    // if是说明如果没有本地信息,需要客户进行第一次认证,反之则不需要认证
    if (!value) {
      var that=this
      //调用登录接口
      wx.login({
        success: function (e) {
          // 获取用户信息
          wx.getUserInfo({
            success: function (res) {

              var userInfo = res.userInfo
              var nickName = userInfo.nickName
              var avatarUrl = userInfo.avatarUrl
              var gender = userInfo.gender //性别 0:未知、1:男、2:女
              var province = userInfo.province
              var city = userInfo.city
              var country = userInfo.country
              var b = res.rawData;

              // 储存信息到本地
              wx.setStorage({
                key: "key",
                data: b
              })
              // 获取本地信息.为了验证是否已获取用户信息
              wx.getStorage({
                key: 'key',
                success: function (data) {
                  console.log(data)
                }
              })
              // mo为显示
              that.setData({
                mo: 'block'

              })
              console.log(2)

            },

          })

        }



      })

    } else{
      // mo为隐藏
      this.setData({
        mo: 'none'

      })
      console.log(3)

    }


  },
  // 清除本地信息
  ll: function () {
    try {
    wx.clearStorageSync()
} catch(e) {
  // Do something when catch error
}
  },

  // onLoad: function (options) {
  //   // 页面初始化 options为页面跳转所带来的参数
  // },
  onReady: function () {
    // 页面渲染完成
  },
  onShow: function () {
    // 页面显示
  },
  onHide: function () {
    // 页面隐藏
  },
  onUnload: function () {
    // 页面关闭
  }
})

代码上的标注已经很清楚,清除storage是为了验证认证表单是否会随着storage变化,
最好的师傅还是官方文档,
附官方文档本地储存api链接

你可能感兴趣的:(小程序,it-前端)