微信小程序的授权用户信息的方式官方一直在改动,目前只能通过控件去引导用户进行授权。用button控件的open-type属性的值为“getUserInfo”去调起授权窗口,点击“微信登录”就会弹出授权,wxml代码如下:
<button type="primary" open-type="getUserInfo" lang="zh_CN" bindgetuserinfo="onGotUserInfo">微信登录</button>
如果用户同意授权,就获取用户信息,如果不同意,就停留在当前页面。
js中的代码如下:
//微信登录,先弹出授权
onGotUserInfo: function(e){
if(e.detail.userInfo) //如果用户允许授权,即点击了“允许"
{
//console.log("授权了");
wx.getUserInfo({//授权后可以通过wx.getUserInfo得到用户信息
lang: "zh_CN",
success: res => {
//如果用户点击了授权,可以直接获取到信息
//console.log(res.userInfo)
wx.setStorageSync("userinfo", res.userInfo);//将用户信息保存到缓存中
}
})
}
},