微信小程序判断用户是否须要再次受权获取我的信息

1、index.js设置以下缓存

 //获取用户的受权信息,放到本地缓存中
    wx.getSetting({
      success: (res) => {
        if(res.authSetting['scope.userInfo'])
        {
          wx.setStorage({
            key: 'can_getuserinfo',
            data: 1,
          })
        }
        else
        {
          wx.setStorage({
            key: 'can_getuserinfo',
            data: 0,
          })
        }
      }
    }),
    //1:从本地缓存中获取数据,若是获取到根据结果显示Index页面的受权按钮是否显示,
    //2:若是从本地缓存获取不到数据则说明用户清空了本地数据,默认设置为0,让用户从新受权
    wx.getStorage({
      key: 'can_getuserinfo',
      success: function (res) { 
        console.log(res.data);
        that.setData({
          can_getuserinfo:res.data
        })
      },fail:function()
      {
        that.setData({
          can_getuserinfo: 0
        })
      }
    })
   
  },

2、index.wxml设置以下微信

<view wx:if="{{can_getuserinfo==0}}">
<text>\n</text>
<text>\n</text>
<text>\n</text>
<button wx:if="{{canIUse}}" open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo">受权登陆</button>
<view wx:else>请升级微信版本</view>
</view>

3、效果spa

效果是若是用户受权过了,则直接首页不显示受权按钮,直接进入业务页面,若是用户没受权,则显示受权按钮让用户选择受权code

相关文章
相关标签/搜索