您现在的位置是:网站首页> 编程资料编程资料

关于Vue 3.0引入百度地图不兼容的解决办法_vue.js_

2023-05-24 368人已围观

简介 关于Vue 3.0引入百度地图不兼容的解决办法_vue.js_

关于Vue 3.0引入百度地图 不兼容的解决办法

1. 问题:Vue 3.0引入百度地图 不兼容

百度地图开发平台文档 封装的vue版本暂时还没有 到 vue 3.0
如果 用npm 引入并使用的话,会出现报错
at eval (bindEvent.js?4fab:8) at Array.forEach () at Proxy.eval (....

(现在暂时是 BaiduMapVue2.x版本,如下图)

2. 解决办法

小编在 各博客搜集 办法并结合,如下(小编是用cdn 引入js 用百度地图原生api 来编写的

新建 js 文件 (异步创建script标签 引入百度地图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就不要再打包这个模块了,所以通过 externals 来排除这个模块) 如下:

 externals: { "BMap": "BMap" }

3.vue页面 引入并执行

生成密匙: ak密匙(百度地图传送门)

4.完成, 地图如下

到此这篇关于关于Vue 3.0引入百度地图 不兼容的解决办法的文章就介绍到这了,更多相关Vue 3.0引入百度地图 不兼容内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

-六神源码网