因为微信的登录授权必须要调用按钮手动授权。所以写了这篇文章,总结一下使用方法。
首先,wxml文件里面需要一个open-type属性为getUserInfo的按钮。
然后通过bindgetuserinfo来绑定一个事件,做相应的业务逻辑处理。比如说我这里将获取到的用户信息存储到了本地缓存里面。
getUserInfo: function(e) {
if (e.detail.userInfo) {
app.globalData.userInfo = e.detail.userInfo;
wx.setStorage({
key: 'userInfo',
data: e.detail.userInfo,
success: function(res) {
console.log("存数据成功")
}
})
}
},
如果不加bindgetuserinfo绑定事件的话,会出现第一次授权拿到的数据无法渲染到前台,但第二次进入程序由于已经授权(只需要授权一次)是可以拿到数据的,这就导致了bug。必须在bindgetuserinfo绑定事件里面进行首次授权的数据处理。