微信小程序获取地址名称
引入文件 var QQMapWX = require("../../utils/qqmap-wx-jssdk.min"); var qqmapsdk; page({ onload(){ let that = this; qqmapsdk = new QQMapWX({ key:'QEYBZ-JZPK3-O4E3A-3TW64-NUCKV-BCFL5' }); that.getUserLocation() } getUserLocation: function () { let that = this wx.getSetting({ success: (res) => { // res.authSetting['scope.userLocation'] == undefined 表示 初始化进入该页面 // res.authSetting['scope.userLocation'] == false 表示 非初始化进入该页面,且未授权 // res.authSetting['scope.userLocation'] == true 表示 地理位置授权 // 拒绝授权后再次进入重新授权 if (res.authSetting['scope.userLocation'] != undefined && res.authSetting['scope.userLocation'] != true) { // console.log('authSetting:status:拒绝授权后再次进入重新授权', res.authSetting['scope.userLocation']) wx.showModal({ title: '', content: '【小程序名称】需要获取你的地理位置,请确认授权', success: function (res) { if (res.cancel) { wx.showToast({ title: '拒绝授权', icon: 'none' }) setTimeout(() => { wx.navigateBack() }, 1500) } else if (res.confirm) { wx.openSetting({ success: function (dataAu) { // console.log('dataAu:success', dataAu) if (dataAu.authSetting["scope.userLocation"] == true) { //再次授权,调用wx.getLocation的API that.getLocation(dataAu) // that.getAddress() } else { wx.showToast({ title: '授权失败', icon: 'none' }) setTimeout(() => { wx.navigateBack() }, 1500) } } }) } } }) } // 初始化进入,未授权 else if (res.authSetting['scope.userLocation'] == undefined) { // console.log('authSetting:status:初始化进入,未授权', res.authSetting['scope.userLocation']) //调用wx.getLocation的API that.getLocation(res) // that.getAddress() } // 已授权 else if (res.authSetting['scope.userLocation']) { // console.log('authSetting:status:已授权', res.authSetting['scope.userLocation']) //调用wx.getLocation的API that.getLocation(res) // that.getAddress() } } }) }, // 微信获得经纬度 getLocation: function (userLocation) { let that = this wx.getLocation({ type: "wgs84", success: function (res) { // console.log('getLocation:success', res) that.setData({ latitude: res.latitude, longitude: res.longitude }, () => { that.jingWeiduToDiZhi(); }) }, fail: function (res) { // console.log('getLocation:fail', res) if (res.errMsg === 'getLocation:fail:auth denied') { wx.showToast({ title: '拒绝授权', icon: 'none' }) setTimeout(() => { wx.navigateBack() }, 1500) return } if (!userLocation || !userLocation.authSetting['scope.userLocation']) { that.getUserLocation() } else if (userLocation.authSetting['scope.userLocation']) { wx.showModal({ title: '', content: '请在系统设置中打开定位服务', showCancel: false, success: result => { if (result.confirm) { wx.navigateBack() } } }) } else { wx.showToast({ title: '授权失败', icon: 'none' }) setTimeout(() => { wx.navigateBack() }, 1500) } } }) }, })
分类:
前端
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)