小程序用户取消第一次授权后,再次调用授权的方法封装,代码如下所示:
第一授权获取的信息和把城市区,代码如下所示:
wx.chooseLocation({
success (res) {
const { address, latitude, longitude, name } = res
const reg = /.+?(省|市|自治区|自治州|县|区)/g;
const data = address.match(reg)
console.log(data);
},
fail (err) {
}
})
再次授权的代码如下:
wx.getSetting({
success (res) {
let status = res.authSetting;
if (!status['scope.userLocation']) {
wx.showModal({
title: '是否授权当前位置',
content: '需要获取您的地理位置,请确认授权,否则地图功能将无法使用',
success (res) {
if (res.confirm) {
wx.openSetting({
success (data) {
if (data.authSetting["scope.userLocation"] === true) {
//授权成功之后,再调用chooseLocation选择地方
wx.chooseLocation({
success (res) {
const { address, latitude, longitude, name } = res
const reg = /.+?(省|市|自治区|自治州|县|区)/g;
const data = address.match(reg)
console.log(data);
},
})
}
}
})
}
},
fail (err) {
wx.showToast({
title: '调用授权窗口失败',
icon: 'none',
duration: 1000
})
}
})
}
},
fail (err) {
wx.showToast({
title: '调用授权窗口失败',
icon: 'none',
duration: 1000
})
}
})