开通腾讯位置复位
使用wx.chooseLocation能够让用户选择地理位置,但是它返回的数据并没有包含省市区等编码数据,新增收货地址是需要传递省市区编码数据,因此,可以使用 腾讯位置服务,将返回的经度、纬度进行地址解析,转换成详细的地址
import QQMapWX from "../../libs/qqmap-wx-jssdk.js"Page({data:{provinceName:'',//省provinceCode:'', //省编码cityName:'', // 市cityCode:'', // 市编码districtName:'', // 区districtCode:'', // 区编码address:'', // 详细地址fullAddress:'' // 完整地址},async onLocation() {// 打开地图,选择位置// latitude经度, longitude纬度, name 搜索的地点const {latitude, longitude, name} = await wx.chooseLocation()this.qqmapsdk.reverseGeocoder({location:{latitude, longitude, name},success:(res) => {// 省市区,省市区编码const { adcode, province, city, district } = res.result.ad_info// 街道、门牌,可能是空const { street, street_number} = res.result.address_component// 获取标准地址const { standard_address} = res.result.formatted_address// 赋值this.setData({provinceName:province,// 省,前2位有值,后面4位是 0 provinceCode:adcode.replace(adcode.substring(2,6), '0000'),cityName:city,// 市,前4位有值,后面2位是 0 cityCode:adcode.replace(adcode.substring(4,6), '00'),districtName:district,districtCode:district && adcode,// 以下两个在开发中根据需求处理// 详细地址address:street+street_number + name,// 完整地址fullAddress:standard_address+name})}})},onLoad() {this.qqmapsdk = new QQMapWX({key: '申请的key'});}
}