欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue使用百度地圖報(bào)錯(cuò)BMap?is?not?defined問題及解決

 更新時(shí)間:2022年10月22日 11:08:13   作者:未來可期xm  
這篇文章主要介紹了vue使用百度地圖報(bào)錯(cuò)BMap?is?not?defined問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

使用百度地圖報(bào)錯(cuò)BMap is not defined

1、在index.html添加

密鑰申請(qǐng):http://lbsyun.baidu.com/apiconsole/key

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

2、webpack.base.conf.js

externals: {
    "BMap": "BMap"
  },

vue導(dǎo)入百度地圖BMap

在項(xiàng)目的根目錄下的index.html文件中添加如下代碼

<script src="https://api.map.baidu.com/api?v=2.0&ak=此處填寫申請(qǐng)的百度地圖AK"></script>

vue項(xiàng)目引入百度地圖 報(bào)錯(cuò) BMap未定義;

在經(jīng)過了多次的測(cè)試后,修改webpack等配置文件后,發(fā)現(xiàn)了一個(gè)十分便捷的處理方法:

首先是在地圖加載的方法中打印了window,發(fā)現(xiàn)BMap是掛載在window上的,所以直接使用BMap會(huì)報(bào)錯(cuò);

在使用的BMap時(shí)需要在window身上去找,所以只需要增加以下代碼就可以解決BMap is not defined的問題

附完整代碼 :

<template>
  <div id="map"></div>
</template>
<script>
let BMap = {};
let map = {};
export default {
  methods: {
    createMap() {
      BMap = window.BMap;
      map = new BMap.Map("map");
      map.centerAndZoom("成都", 11);
    },
  },
  created() {
    this.$nextTick(() => {
      this.createMap();
    });
  },
};
</script>
 
<style scoped>
#map {
  width: 100%;
  height: 1000px;
}
</style>

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論