使用前请前往微信官网下载qqmap-wx-jssdk.js文件
由于region数组在业务系统中对应的是属性,本人进行一些逻辑处理
注意事项:
1 value只能是region,改了就无效
2 region只能是数组
3 必须要有默认值才能使用,若请求失败,提供默认值
<view class="l-ship-addr edit-field" id="distpicker1">
<text>收货地址:</text>
<picker mode="region" name="addressRegion" bindchange="bindRegionChange" value="{{region}}" custom-item="{{customItem}}">
<view class="picker">
{{region[0]}},{{region[1]}},{{region[2]}}
</view>
</picker>
</view>
在业务js文件中引入地图js文件
var QQMapWX = require('../../utils/qqmap-wx-jssdk.js');
var qqmapsdk;
/**
* 监听定位到当前位置 给省市区默认值
*/
listenerBtnGetLocation: function () {
// 实例化腾讯地图API核心类
qqmapsdk = new QQMapWX({
key: 'RI5BZ-RFVRU-G3VVI-2M24V-36YLZ-POFQM' // 必填
});
var that = this
var regionWX=[];
wx.getLocation({
type: 'wgs84',
success: function (res) {
//2、根据坐标获取当前位置名称,显示在顶部:腾讯地图逆地址解析
qqmapsdk.reverseGeocoder({
success: function (res) {
regionWX[0] = res.result.address_component.province;
regionWX[1] = res.result.address_component.city;
regionWX[2] = res.result.address_component.district;
that.setData({
region: regionWX
})
},
fail: function (res) {
console.log(res);
},
complete: function (res) {
console.log(res);
}
})
},
fail: function (err) {
that.setData({
region: ['广东省', '广州市', '海珠区']
})
console.log(err)
},
complete: function (info) {
console.log(info)
}
})
},
网页端待补充