直接代码(亲测没问题)
1.wxml文件
<button bindtap="getCenterLocation">点击获取位置</button>
2.js文件
// 打开地图地址选择
getCenterLocation() {
var that = this;
// 微信授权
wx.authorize({
// 地理位置
scope: 'scope.userLocation',
complete: function (res) {
console.log(res)
wx.chooseLocation({
success(str) {
console.log(str)
// 调用腾讯地图接口
that.getLocation(str)
}
})
}
})
},
// 调用腾讯地图接口
getLocation(val) {
var that = this;
return new Promise((res, rej) => {
//腾讯地图key值
var key = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
//发送请求通过经纬度反查地址信息
var getAddressUrl = "https://apis.map.qq.com/ws/geocoder/v1/?location=" + val.latitude + "," + val.longitude + "&key=" + key + "&get_poi=1";
wx.request({
url: getAddressUrl,
success: function (result) {
console.log(result)
var province = result.data.result.address_component.province;
var city = result.data.result.address_component.city;
var district = result.data.result.address_component.district;
var address = result.data.result.formatted_addresses.recommend;
console.log('省市县:' + province + city + district)
console.log('地址:' + address)
},
fail: Error => {
rej(Error)
},
})
})
},