微信小程序chooseLocation返回直辖市地址时前面的直辖市名称重复。
如,例1:
开发者工具:搜索关键字“煌华·新纪元3号楼”,结果中选中“煌华·新纪元3号楼”并点确定,接口返回数据:
- address: "重庆市沙坪坝区"
- errMsg: "chooseLocation:ok"
- latitude: 29.558671799
- longitude: 106.462300899
- name: "煌华·新纪元3号楼"
真机调试(安卓):搜索关键字“煌华·新纪元3号楼”,结果中选中“煌华·新纪元3号楼”并点确定,接口返回数据:
- address: "重庆市重庆市沙坪坝区"
- errMsg: "chooseLocation:ok"
- latitude: 29.558672
- longitude: 106.4623
- name: "煌华·新纪元3号楼"
问题:真机调试时返回的address里有两个“重庆市”,开发者工具调试的没问题。
如,例2:
开发者工具:搜索关键字“上海市科技馆”,结果中选中“上海市科技馆”并点确定,接口返回数据:
- address: "上海市浦东新区世纪大道2000号"
- errMsg: "chooseLocation:ok"
- latitude: 31.218216142
- longitude: 121.541671628
- name: "上海市科技馆"
真机调试(安卓):搜索关键字“上海市科技馆”,结果中选中“上海市科技馆”并点确定,接口返回数据:
- address: "上海市上海市浦东新区世纪大道2000号"
- errMsg: "chooseLocation:ok"
- latitude: 31.218216
- longitude: 121.54167
- name: "上海市科技馆"
问题:真机调试时返回的address里有两个“上海市”,开发者工具调试的没问题。
也试了北京、天津,都是一样的问题。试了四川省,因为有三级,就是正常的如“四川省成都市***”这样的。
并且,真机上,地图页面选择结果那里,重庆市的地址是只显示一个“重庆市”,选中后接口返回的数据里就有2个“重庆市”,而上海、天津,在地图页面选择结果那里就直接显示的两个直辖市名称,如“上海市上海市浦东新区***”,选中后接口返回的数据里也依然有2个“上海市”。
烦请解答下是什么情况啊,我们该如何获取正确的地址???
代码 wxml:
<!-- ChooseLocation -->
<view class="uploader">
<view class="uploader-text" bindtap="chooseLocation">
<text>ChooseLocation</text>
</view>
<view>lg:{{lg}}</view>
<view>ln:{{ln}}</view>
<view>OfficeAddress:{{OfficeAddress}}</view>
</view>
代码 JS:
//chooseLocation
chooseLocation() {
let that = this
wx.chooseLocation({
success: function (res) {
console.log(res)
that.setData({
lg: res.latitude,
ln: res.longitude,
OfficeAddress: res.address
})
},
})
},
这个问题现在还存在!!!
这个算不上问题吧,百度地图好像也是这样,只能自己处理一下,都是按照省市县三级来的
是否有代码片段。