我是写在 app.js
onLaunch: 函数里面;初始化就授权
wx.getSetting({
success: res => {
//这里打印res 得到authSetting数组里scope 三条相关信息都是true 如果拒绝授权
res.authSetting['scope.userInfo']
== false 下面再次调起授权
if (res.authSetting['scope.userInfo'] ==
false) {
wx.showModal({
title: '警告',
content: '您点击了拒绝授权,将无法正常显示个人信息,点击确定重新获取授权。',
success: function (e) {
wx.getSetting({
success: event => {
console.log(event);
//得到authSetting数组里scope
三条相关信息都是true 授权成功
}
});
}
})
}
}
})
有一个不好的地方就是 小程序再次调起授权的时候 如果仍然拒绝 就没了(授权界面)
只有再次进入小程序的时候 才会出发请求授权 (这是不足之处)
如果想反复调起授权 可以在wxml里写一个主动请求的 按钮点击一次 就去请求上面的代码 再次去授权
wxml: <button bindtap="auth">请求授权</button>
对应js:
auth:function(){
//简单粗暴点 把上面那一段代码复制进去
}
这样就会反复请求授权 (是主动请求哦)