vue + vue-resource 请求天地图

14 篇文章 0 订阅
3 篇文章 0 订阅

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的参数,

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值