Vue Baidu Map--vue引入百度地图

1.安装

npm方式安装

$ npm install vue-baidu-map --save

2.局部注册

html 复制代码
<template>
<div class="map-content" v-if="iscollegeRole">
      <baidu-map class="bm-view map"
                 :ak="mapAK" 
                 :scroll-wheel-zoom="true" 
                 :center="mapData.center" 
                 :zoom="mapData.zoom"
                 :continuous-zoom="true"
                 @ready="handler">
      </baidu-map>
    </div>
</template>

<script>
import BaiduMap from 'vue-baidu-map/components/map/Map.vue'
export default {
  components: {BaiduMap},
  data() {
        return {
          mapAK: 'XXXXXXXXXXX',//需要到百度地图官网申请ak
          BMap:null,
          map:null,
          mapData: {
            //中心坐标
            center: { lng: 113.33, lat: 39.01 },
            //缩放级别,1~19
            zoom: 19
          },
      }
   },
   methods:{
        handler ({BMap, map}) {
          console.log(BMap, map)
          this.BMap = BMap
          this.map = map
          }
     },
}
</script>

<style scope>
.map {
  width: 100%;
  height: 400px;
}
</style>

参数说明

参数 说明
ak 在百度地图api官网申请的ak
scroll-wheel-zoom 允许鼠标滚轮缩放。默认是false,若需使用,需要设为true
center 地图的中心点
zoom 放大倍数
continuous-zoom 允许无级缩放

注:

  • BaiduMap 组件容器本身是一个空的块级元素,如果容器不定义高度,百度地图将渲染在一个高度为 0 不可见的容器内。
  • 没有设置center 和 zoom 属性的地图组件是不进行地图渲染的。当center 属性为合法地名字符串时例外,因为百度地图会根据地名自动调整 zoom 的值。
  • 由于百度地图 JS API 只有 JSONP 一种加载方式,因此 BaiduMap组件及其所有子组件的渲染只能是异步的。因此,请使用在组件的 ready 事件来执行地图 API 加载完毕后才能执行的代码,不要试图在vue 自身的生命周期中调用 BMap 类,更不要在这些时机修改 model 层。
相关推荐
baiduopenmap13 天前
LBS 开发微课堂|通过openGL ES轻松实现建筑物渲染及动画
前端·百度地图
baiduopenmap1 个月前
百度世界2024精选公开课:基于地图智能体的导航出行AI应用创新实践
前端·人工智能·百度地图
程序喵D4 个月前
百度地图SDK Android版开发 7 覆盖物示例1
android·百度地图
程序喵D4 个月前
百度地图SDK Android版开发 6 显示覆盖物
android·百度地图
进阶的巨人0018 个月前
百度地图实现3d发光建筑群
前端·3d·百度地图·建筑群
java_强哥8 个月前
html接入百度地图
前端·html·百度地图
小果子^_^9 个月前
vue集成百度地图,实现关键字搜索并自定义覆盖物,保存成静态图片
前端·vue.js·百度地图
Hi202402179 个月前
通过更新路书当前坐标下marker的icon来展示沿途的风景
百度地图·路书
秩沅9 个月前
【unity接入SDK案例】从0到1 如何接入百度地图SDK到unity中【二】
android·unity·游戏引擎·百度地图
爱敲代码的小旗9 个月前
html 如何引入 百度地图
vue·百度地图