vue-baidu-map使用setMapStyleV2函数报错

为了满足相关需求,我在Vue项目中使用了vue-baidu-map插件。在为地图设置自定义样式时,控制台中出现报错,且自定义样式没有生效。

以下是报错内容:

Uncaught (in promise) TypeError: bmap.setMapStyleV2 is not a function

回看项目代码,定位到该函数的位置:

bmap.setMapStyleV2({ styleJson: eval(mapStyle) }); // 修改地图样式

作了如以下的修改后,控制台中没有再报错,自定义样式能够生效,但是效果有点奇怪,比如道路并没有正常地显示出来:

bmap.setMapStyle({ styleJson: eval(mapStyle) }); // 修改地图样式

 网上看了相关帖子,发现是百度地图api版本问题,于是在index.html文件中定位到了以下代码:

<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=...(填入申请的AK)"></script>

然后我将api?v=2.0修改为api?v=3.0:

<script type="text/javascript" src="http://api.map.baidu.com/api?v=3.0&ak=...(填入申请的AK)"></script>

保存后刷新项目页面,自定义样式能正常显示了:

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue3中使用vue-baidu-map的方法如下: 1. 首先,安装vue-baidu-map依赖包。可以通过npm或者yarn进行安装。 2. 在vue组件中引入BMap,并在mounted钩子函数中创建地图实例。注意,在Vue3中,需要使用import语法引入BMap,例如:import BMap from 'BMap'。 3. 在mounted钩子函数中,使用BMap创建地图实例,并设置地图的中心点和缩放级别。 4. 添加地图标注:使用BMap.Marker创建标注实例,并将其添加到地图上。 5. 可选地,添加信息窗口:使用BMap.InfoWindow创建信息窗口实例,并使用map.openInfoWindow()方法开启信息窗口。 6. 可选地,为标注添加点击事件,当点击标注时开启信息窗口。 以下是一个示例代码: ```html <template> <div class="map"> <div id="map"></div> </div> </template> <script> import BMap from 'BMap' export default { mounted() { const map = new BMap.Map('map') const point = new BMap.Point(118.750801, 31.944156) map.centerAndZoom(point, 15) const marker = new BMap.Marker(point) map.addOverlay(marker) const opts = { width: 100, height: 50 } const infoWindow = new BMap.InfoWindow('这里显示地址详细信息', opts) marker.addEventListener('click', function() { map.openInfoWindow(infoWindow, point) }) } } </script> ``` 以上代码展示了在Vue3中使用vue-baidu-map的基本流程。你需要根据自己的需求,在上述基础上进行进一步的定制和添加功能。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [vue3 使用百度地图,踩坑日历](https://blog.csdn.net/hjg1224/article/details/121241972)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [vue-baidu-map离线百度地图,并附带jar包免费下载百度瓦片数据](https://download.csdn.net/download/HZC961850356/82034496)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值