云开发-运营分析-用户访问-访问用户列表中,大量用户信息未知。仅有少量已知(不足5%)。并且头像均无法读取。
已引导用户使用button授权。 并使用同事手机测试。但仍无法获取信息。
- 当前 Bug 的表现(可附上截图)
- 预期表现
- 提供一个最简复现 Demo
home.wxml
<button wx:if="{{hasUserInfo}}" class=‘cu-btn round lines-red margin-tb-sm lg home-btn’ bindtap=‘onTapSearch’>
<text space=“ensp”>搜 索 房</text>
</button>
<button wx:else class=‘cu-btn round lines-red margin-tb-sm lg home-btn’ open-type=‘getUserInfo’ bindgetuserinfo=“onGetUserInfo”>
<text space=“ensp”>请 点 击 授 权</text>
</button>
home.js
const app = getApp();
onLoad: function(options) {
app.getHasUserInfo(this);
},
onGetUserInfo: function(e) {
app.getHasUserInfo(this);
},
app.js:
getHasUserInfo: function(that) {
if (!this.globalData.hasUserInfo && !that.data.hasUserInfo) {
// 如果已授权则在程序启动时自动获取用户信息
wx.getUserInfo({
success: res => {
// 记录用户信息为全局变量
this.globalData.userInfo = res.userInfo;
this.globalData.hasUserInfo = true;
console.log("getHasUserInfo_success: " + res.errMsg);
that.setData({
hasUserInfo: true
});
},
fail: res => {
if (this.globalData.hasUserInfo != null) {
wx.showToast({
title: “为了提交报名\n请授权我们获得您的公开信息”,
icon: ‘none’,
duration: 4000
});
};
this.globalData.hasUserInfo = false;
console.log("getHasUserInfo_fail: " + res.errMsg);
that.setData({
hasUserInfo: false
});
}
});
} else {
console.log("getHasUserInfo_abort: globalData status: " + this.globalData.hasUserInfo)
console.log("currentPage status_before: " + that.data.hasUserInfo);
that.setData({
hasUserInfo: this.globalData.hasUserInfo
});
console.log("currentPage status_now: " + that.data.hasUserInfo);
};
}