详解vue项目中调用百度地图API使用方法
步骤一:申请百度地图密钥;
JavaScript API v1.4以及以前的版本无序申请秘钥(ak),自v1.5版本开始需要先申请秘钥(ak),才可以使用,如需获取更高的配额,需要申请 认证企业用户。百度地图API 链接地址:http://lbsyun.baidu.com/apiconsole/key
步骤二:在index.html中添加百度地图JavaScript API接口;
<script src="http://api.map.baidu.com/api?v=1.4" type="text/javascript"></script> // v1.4版本以及以前版本
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=您的秘钥" ></script> //1.5版本,需要秘钥
步骤三:在webpack.base.conf.js配置文件中配置BMap,在module.exports 中与entry平级;如果还有其他的,同样在下面引入就可以了,比如自定义覆盖物BMap_Symbol_SHAPE_POINT等。 (需要重新 npm run dev才可以)
module.exports = { entry: { app: './src/main.js' }, externals: { 'BMap': 'BMap', 'BMap_Symbol_SHAPE_POINT': 'BMap_Symbol_SHAPE_POINT' },
步骤四:在组件中创建一个容器,用来显示百度地图(宽高最好都是100%);
<div class="baidumap" id="allmap"> </div>
步骤五:在地图组件中import BMap,否则会出现"BMap undefined";还有这个BMap_Symbol_SHAPE_POINT,因为是用“_”连字符,会报错让你这个没有用驼峰命名。所以引入时,把这个连字符去掉就行了。
import BMap from 'BMap
import BMapSymbolSHAPEPOINT from 'BMap_Symbol_SHAPE_POINT'
步骤六:创建地图对象,在mounted生命周期调用;
mounted () { this.baiduMap() }, methods: { // 返回 goback () { this.$router.go(-1) }, baiduMap () { var map = new BMap.Map('allmap') var point = new BMap.Point(111.742579, 40.818675) map.centerAndZoom(point, 12) var marker = new BMap.Marker(point) // 创建标注 map.addOverlay(marker) // 将标注添加到地图中 } }
步骤七:将组件插入父组件中;
相关推荐
Luckyunyun 2020-08-15
yuzhu 2020-11-16
85477104 2020-11-17
KANSYOUKYOU 2020-11-16
sjcheck 2020-11-03
怪我瞎 2020-10-28
源码zanqunet 2020-10-28
gloria0 2020-10-26
王军强 2020-10-21
学习web前端 2020-09-28
QiaoranC 2020-09-25
anchongnanzi 2020-09-21
安卓猴 2020-09-12
Macuroon 2020-09-11
kiven 2020-09-11
LittleCoder 2020-09-11
Cheetahcubs 2020-09-13
小焊猪web前端 2020-09-10