vue项目调用百度地图api 学习总结

一、安装百度地图插件:

npm install vue-baidu-map –save

二、在vue项目首页index.html进入插件:

注:src里的http必须要写如果不写会出现bug! ! !

没有秘钥可以点击http:// http://lbsyun.baidu.com/apiconsole/key进去获取

<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=你申请的秘钥"></script>

三、下面开始写核心代码:

<template>
  <div class="baidumap" id="allmap"></div>
</template>


</script>
<script>
  export default {
    mounted() {
      this.baiduMap()
    },
    methods: {
      baiduMap() {
        let map = new BMap.Map('allmap');
        let point = new BMap.Point(115.043096, 38.592132) //创建点坐标
        map.centerAndZoom(point, 12) //初始化地图,设置中心点坐标和地图级别
        map.enableScrollWheelZoom(true) //开启鼠标滚轮缩放
        map.addControl(new BMap.NavigationControl()) //地图控柄
        map.addControl(new BMap.ScaleControl()) //实际距离显示
        map.addControl(new BMap.OverviewMapControl())
        // map.setMapStyle({ style: 'midnight' }) //地图主题
        let marker = new window.BMap.Marker(point); //创建柱标
        map.addOverlay(marker) //将标注添加到地图中
        //提示信息
        var infoWindow = new BMap.InfoWindow('提示信息')
        // 鼠标移上标注点要发生的事
        marker.addEventListener('mouseover', function() {
          this.openInfoWindow(infoWindow)
        })
        // 鼠标移开标注点要发生的事
        marker.addEventListener('mouseout', function() {
          this.closeInfoWindow(infoWindow)
        })
        console.log(marker)
      }
    }
  }
</script>

<style >
  .baidumap {
    width: 1000px;
    height: 500px;
    border: 1px solid red;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto;
  }

  /* 删除百度地图版权字 与 百度logo */
  .baidumap>.BMap_cpyCtrl {
    display: none !important;
  }

  .baidumap>.anchorBL {
    display: none !important;
  }
</style>

四、百度地图其他new BMap.Map()相关API:

https://lbsyun.baidu.com/cms/jsapi/reference/jsapi_reference.html#a0b0

五、最终效果:

CSDN社区 《创作达人》活动,只要参与其中并创作文章就有机会获得官方奖品:精品日历、新程序员杂志,快来参与吧!链接直达 https://bbs.csdn.net/topics/605272551 

Vue项目调用百度地图API实现根据经纬度判断某个点是否在淮安地区范围内,可以按照以下步骤: 1. 在Vue项目安装百度地图JavaScript API的SDK,可以通过以下命令进行安装: ``` npm install bmap-js-sdk --save ``` 2. 在Vue组件引入百度地图的JavaScript API,可以在`mounted`钩子函数进行初始化: ``` mounted() { this.initMap(); }, methods: { initMap() { const AK = '申请的百度地图API Key'; const BMap = window.BMap; this.map = new BMap.Map('map-container'); this.map.centerAndZoom(new BMap.Point(119.015, 33.61), 12); // 设置心点和缩放级别 this.map.enableScrollWheelZoom(true); // 开启鼠标滚轮缩放 this.map.addControl(new BMap.NavigationControl()); // 添加平移缩放控件 this.map.addControl(new BMap.ScaleControl()); // 添加比例尺控件 this.map.addControl(new BMap.OverviewMapControl()); // 添加缩略地图控件 this.geo = new BMap.Geocoder(); // 初始化地理编码器 } } ``` 3. 根据淮安地区的经纬度信息,使用百度地图的多边形覆盖物来绘制淮安地区的范围,代码如下: ``` const points = [ new BMap.Point(119.004, 33.559), new BMap.Point(119.004, 33.678), new BMap.Point(119.16, 33.678), new BMap.Point(119.16, 33.559) ]; const polygon = new BMap.Polygon(points, {strokeColor: '#f00', strokeWeight: 2, strokeOpacity: 0.8, fillColor: '#f00', fillOpacity: 0.2}); this.map.addOverlay(polygon); ``` 4. 在Vue组件定义一个方法,该方法接收一个经纬度对象作为参数,判断该经纬度是否在淮安地区的范围内,代码如下: ``` checkLocation(point) { const polygon = this.map.getOverlays()[0]; // 获取多边形覆盖物 if (polygon.containsPoint(point)) { console.log('该点在淮安地区范围内'); } else { console.log('该点不在淮安地区范围内'); } } ``` 5. 在Vue组件调用`checkLocation`方法,传入经纬度参数,判断该点是否在淮安地区范围内,代码如下: ``` // 获取经纬度信息 const point = new BMap.Point(119.015, 33.61); // 调用checkLocation方法判断该点是否在淮安地区范围内 this.checkLocation(point); ``` 以上就是在Vue项目调用百度地图API实现根据经纬度判断某个点是否在淮安地区范围内的步骤。
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值