1.安装好vue+vue-resource
2.引入天地图
3.开始标点
注:以上步骤不需要过多解释
4.唤起天地图标点事件,并获取到该点的经纬度
// 注册点图点击事件(开启地图点击事件并获取经纬图)
addMapClick: function(){
this.map.addEventListener("click",this.MapClick);
},
// 获取经纬度
MapClick: function(e){
this.longitude = e.lnglat.getLng()
this.latitude = e.lnglat.getLat()
// 添加标准图标
let marker = new T.Marker(new T.LngLat(this.longitude, this.latitude))
this.map.addOverLay(marker);
marker.enableDragging();
this.getadress(e.lnglat.getLng(),e.lnglat.getLat())
this.removeMapClick()
}
5.调用天地图逆地理编码查询接口(http://lbs.tianditu.gov.cn/server/geocoding.html)
// 通过经纬度获取当前地址信息
getadress: function (longitude,latitude) {
//let postStr = "postStr={'lon'="+longitude+",'lat'="+latitude+",'ver'=1}";
//console.log(postStr)
/*let postStr = {
'lon': longitude,
'lat': latitude,
'ver': 1
}*/
//let datastr = JSON.stringify(datarray);
let url = 'http://api.tianditu.gov.cn/geocoder?type=geocode&tk=6865d202ba9de8f30c45196961e83168'
// Lambda写法
this.$http.get(url,{params:{postStr:"{'lon': "+longitude+",'lat': "+ latitude+ ",'ver': 1}"}}).then((response) => {
// 响应成功回调
let res = response.data
console.log(response);
})
}
6.打印结果
7.注意事项
vue-resource的get方式:将postStr参数直接拼接到url上,请求路径始终无法带上postStr的参数,