cocos的js代码,3.4.2基础库用户授权弹窗不会弹窗!2.30基础库就能弹窗,如何破?
//第五关监听微信登录的脚本
cc.Class({
extends: cc.Component,
properties: {
//button按钮直接指定本脚本下的onClick方法!!不在面板上!
},
onClick() {
let self = this;
//创建 button 获取用户信息
let button = wx.createUserInfoButton({
type: 'text',
text: '查看排行榜',
style: {
left: 10,
top: 50,
width: 200,
height: 40,
backgroundColor: '#00ffb7',
color: '#ffffff',
textAlign: 'center',
fontSize: 16,
borderRadius: 4
}
});
//监听用户点击事件
button.onTap((res) => {
console.log(res);
//判断是否获取到用户信息
if (res.userInfo) {
let userInfo = res.userInfo;
//调用wxLogin方法处理用户信息
self.wxLogin(userInfo);
//销毁按钮
button.destroy();
} else {
console.log("用户拒绝授权获取用户信息");
}
});
},
wxLogin(userInfo) {
let icon = cc.find("Canvas/bg-005/icon").getComponent(cc.Sprite);
cc.loader.load({ url: userInfo.avatarUrl, type: "png" }, function (err, texture) {
if (err) {
console.error("加载用户头像失败", err);
} else {
icon.spriteFrame = new cc.SpriteFrame(texture);
}
});
},
start() {
// 在 start 方法中进行已授权的用户信息获取
wx.getSetting({
success(res) {
if (res.authSetting['scope.userInfo']) {
wx.getUserInfo({
success(res) {
let userInfo = res.userInfo;
self.wxLogin(userInfo);
}
});
} else {
console.log("用户未授权获取用户信息");
}
}
});
}//start收尾
});