文章目录
- 概要
- 微信小程序的,使用的是高德地图
概要
当用户来到页面之后就会弹出是否授权弹框,但是如果第一次关闭之后,下一次再过来的话页面的授权弹框就不出现了,针对于这种情况写了一个方法
微信小程序的,使用的是高德地图
getLocationPodel() {let that = thiswx.getSetting({success: (res) => {if (res.authSetting['scope.userLocation'] != undefined && res.authSetting['scope.userLocation'] != true) {//非初始化进入该页面,且未授权wx.showModal({title: '是否授权当前位置',content: '需要获取您的地理位置,请确认授权,否则无法获取您所需数据',success: function (res) {if (res.cancel) {} else if (res.confirm) {wx.openSetting({success: function (dataAu) {if (dataAu.authSetting["scope.userLocation"] == true) {wx.showToast({title: '授权成功',icon: 'success',duration: 1000})//再次授权,调用getLocationt的APIthat.getLocation1();} else {wx.showToast({title: '授权失败',icon: 'success',duration: 1000})}}})}}})} else if (res.authSetting['scope.userLocation'] == undefined) {//初始化进入that.getLocation1();}else { //授权后默认加载that.getLocation1();}}})},getLocation1() {let that = thisuni.getLocation({type: 'wgs84',success: function (res) {that.getLocation(res.latitude,res.longitude)},fail:function(res) {console.log('dfvdfvdfv')}});},getLocation(latitude,longitude) {let that = this//根据经纬度获取城市信息wx.request({url: 'https://apis.map.qq.com/ws/geocoder/v1',data: {key:'自己的key值,location:`${latitude},${longitude}`},success: (res) => {let address = res.data.result.address_componentthat.city = address.citythat.province = address.province},fail: () => {},complete: () => {}});},