2、之前提到微信不允许进页面强制进行授权问题,提供组件进行授权
因为我只需要昵称和性别,所以只获取了这两个(微信小程序性别标注 【1男、2女、0未知】如果数据库不是这样最好对应进行调整)
wxml
<button class='confirm' open-type="getUserInfo" bindgetuserinfo="confirmOrder">确认领取</button>
js
confirmOrder: function (e) {
var userInfoDeatil = e.detail.userInfo;
if(typeof(userInfoDeatil) != 'undefined'){
var nickName = userInfoDeatil.nickName;
var sex = userInfoDeatil.gender;
// 提示框,确认是否领取
wx.showModal({
title: '系统提示',
content: '确认是否领取' + num + unit,
success: function (res) {
if (res.confirm) {
wx.login({
success: function (res) {
if (res.code) {
wx.request({
url: XXXXXXXXXXXXXXXXXX,
data: {
user_code: res.code,//要去换取openid的登录凭证
nickname: nickName,
sex: sex,
},
method: "GET",
success: function (res) {
console.log(res.data);
//本地存储openid
wx.setStorage({
key: "openId",
data: res.data.result.openid
})
},
});
} else {
console.log('请求失败')
}
}
})
} else {
console.log("用户取消领取")
}
}
})
}else{
console.log('用户拒绝授权')
}
},