關(guān)于Vue 3.0引入百度地圖不兼容的解決辦法
關(guān)于Vue 3.0引入百度地圖 不兼容的解決辦法
1. 問題:Vue 3.0引入百度地圖 不兼容
百度地圖開發(fā)平臺文檔 封裝的vue版本暫時(shí)還沒有 到 vue 3.0
如果 用npm 引入并使用的話,會出現(xiàn)報(bào)錯(cuò)
at eval (bindEvent.js?4fab:8) at Array.forEach (<anonymous>) at Proxy.eval (....
(現(xiàn)在暫時(shí)是 BaiduMapVue2.x版本,如下圖)

2. 解決辦法
小編在 各博客搜集 辦法并結(jié)合,如下(小編是用cdn 引入js 用百度地圖原生api 來編寫的)
新建 js 文件 (異步創(chuàng)建script標(biāo)簽 引入百度地圖api)
export function baiduMap(ak) {
return new Promise(function(resolve, reject) {
window.baiduMap = function() {
resolve()
}
var script = document.createElement('script')
script.type = 'text/javascript'
script.src = `http://api.map.baidu.com/api?v=3.0&ak=${ak}&callback=baiduMap`
script.onerror = reject
document.head.appendChild(script)
})
}
配置“vue.congfig.js” (我們映入了CDN就不要再打包這個(gè)模塊了,所以通過 externals 來排除這個(gè)模塊) 如下:
externals: { "BMap": "BMap" }3.vue頁面 引入并執(zhí)行
生成密匙: ak密匙(百度地圖傳送門)
<template>
<div id="map"></div>
</template>
<style type="text/css">
#map {
width: 100%;
height: 500px;
}
</style>
<script>
import { baiduMap } from '../../baiduMap.js'
export default {
data() {
return {
ak: '你的百度地圖密匙' // 百度密匙
}
},
mounted() {
// 動態(tài)引入較大類庫避免影響頁面展示
this.$nextTick(() => {
let _this = this;
baiduMap(_this.ak).then( thatMap => {
// 創(chuàng)建地圖實(shí)例
var map = new BMap.Map("map");
// 創(chuàng)建地圖實(shí)例
var point = new BMap.Point(116.404, 39.915);
// 創(chuàng)建點(diǎn)坐標(biāo)
map.centerAndZoom(point, 15);
// 初始化地圖,設(shè)置中心點(diǎn)坐標(biāo)和地圖級別
})
})
}
}
</script>4.完成, 地圖如下

到此這篇關(guān)于關(guān)于Vue 3.0引入百度地圖 不兼容的解決辦法的文章就介紹到這了,更多相關(guān)Vue 3.0引入百度地圖 不兼容內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
layui實(shí)際項(xiàng)目使用過程中遇到的兼容性問題及解決
這篇文章主要介紹了layui實(shí)際項(xiàng)目使用過程中遇到的兼容性問題及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04
vue3.x lodash在項(xiàng)目中管理封裝指令的優(yōu)雅使用
這篇文章主要為大家介紹了vue3.x lodash在項(xiàng)目中管理封裝指令的優(yōu)雅使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09
詳解vue中v-model和v-bind綁定數(shù)據(jù)的異同
這篇文章主要介紹了vue中v-model和v-bind綁定數(shù)據(jù)的異同,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08

