vue中使用百度地图
2017-08-30 10:17
2301 查看
vue中使用百度地图
安装npm
npm install vue-baidu-map –save
CDN
<script src="https://unpkg.com/vue-baidu-map"></script>
使用
全局注册
全局注册将一次性引入百度地图组件库的所有组件
import Vue from 'vue' import BaiduMap from 'vue-baidu-map' Vue.use(BaiduMap, { // ak 是在百度地图开发者平台申请的密钥 详见 http://lbsyun.baidu.com/apiconsole/key */ ak: 'YOUR_APP_KEY' })
<template> <baidu-map class="bm-view"> </baidu-map> </template> <style> .bm-view { width: 100%; height: 300px; } </style>
局部注册
如果有按需引入组件的需要,可以选择局部注册百度地图组件,这将减少工程打包后的容量尺寸。局部注册的 BaiduMap 组件必须声明 ak 属性。
<template> <baidu-map class="bm-view" ak="YOUR_APP_KEY"> </baidu-map> </template> <script> import {BaiduMap} from 'vue-baidu-map' export default { components: { BaiduMap } } </script> <style> .bm-view { width: 100%; height: 300px; } </style>
CDN全局注册
<script> Vue.use(VueBaiduMap.default, { ak: 'YOUR_APP_KEY' }) </script>
常见问题
BaiduMap组件容器本身是一个空的块级元素,如果容器不定义高度,百度地图将渲染在一个高度为 0 不可见的容器内。
由于百度地图 JS API 只有 JSONP 一种加载方式,因此
BaiduMap组件及其所有子组件的渲染只能是异步的。因此,请使用在组件的 ready 事件来执行地图 API 加载完毕后才能执行的代码,不要试图在 vue 自身的生命周期中调用
BMap类,更不要在这些时机修改 model 层。
错误使用
<template> <baidu-map :center="center"></baidu-map> </template> <script> export default { data () { return { center: {lng: 0, lat: 0} } }, mounted () { this.lng = 116.404 this.lat = 39.915 } } </script>
正确使用
<template> <baidu-map :center="center" @ready="handler"></baidu-map> </template> <script> export default { data () 4000 { return { center: {lng: 0, lat: 0} } }, methods: { handler ({BMap, map}) { console.log(BMap, map) this.center.lng = 116.404 this.center.lat = 39.915 } } } </script>
以上是基础用法,想了解更多详细用法以及更多API
飞机票:https://dafrok.github.io/vue-baidu-map/#/
相关文章推荐
- 浅谈Vue下使用百度地图的简易方法
- 在vue中使用百度地图
- vue中使用heatmapjs的示例代码(结合百度地图)
- vue 在项目中使用百度地图
- Vue系列:在vux的popup组件中使用百度地图遇到显示不全的问题
- vue使用百度地图记录
- vue项目中使用百度地图的方法
- 2种在vue项目中使用百度地图的简单方法
- vue使用百度地图
- 前端框架Vue(9)——百度地图使用
- Vue2.0与 [百度地图] 结合使用———vue+webpack+axios+百度地图实现组件之间的通信
- Vue的百度地图插件尝试使用
- Vue2.0与 [百度地图] 结合使用———vue+webpack+axios+百度地图实现组件之间的通信
- iOS 之 使用百度地图 (删除地图页面所有自己添加的标注)
- Android Studio开发APP,同时使用了百度地图和腾讯云通信,打包之后APP运行崩溃,分开打包运行正常
- 使用v-html解决Vue.js渲染过程中html标签不能被解析(html标签显示为字符串)
- web前端vue之vuex单独一文件使用方式实例详解
- 使用百度地图实现地图网格的示例
- vue使用nuxt实现服务器端渲染
- 在vue 中使用 less的教程详解