在进入小程序时需要获取用户的信息,如果用户允许获取,自然没有问题。但是当用户拒绝时,一些功能可能无法正常的使用。
- 拒绝获取
//index.js
onShow(){
wx.getUserInfo({
success: res => {
//正常的操作
},
fail: err => {
wx.navigateTo({//进入引导用户授权的页面
url: '/pages/Welcome/Welcome'
})
}
})
}
// Welcome.js
authorizationBtn(){//点击按钮的事件函数
if (wx.openSetting) {
wx.openSetting({
success: function (res) {
if (res.authSetting['scope.userInfo']) {
wx.getUserInfo({
success: res => {
console.log('授权成功')
wx.switchTab({//返回到index pages
url: '/pages/index/index'
})
}
})
}
},
fail: function () {
console.log('wx.openSetting err')
}
})
} else {
console.log('不支持 wx.openSetting');
}
},
当然并不是只有这一种解决方案。
比如:进入这个页面的时候加一个空白的页面,让用户去授权,如果没有授权去提示,没法授权无法使用部分功能。授权使用的代码部分可以参考上面的代码。
如果存在游客模式,拒绝授权也可以使用其他的浏览的功能。