vue 同时使用百度地图BMapGL版本和BMap版本
时间: 2023-07-26 08:10:02 浏览: 291
vue调用百度地图api
可以同时使用百度地图BMapGL版本和BMap版本,但是需要注意以下几点:
1. 引入的 JavaScript 文件不能重复,需要分别引入BMapGL和BMap的JavaScript文件。
2. 在使用BMapGL时,需要使用BMapGL.Map、BMapGL.Point等对象,而不是BMap的对象。
3. 在BMapGL和BMap之间切换时,需要注意地图容器的ID是否相同,如果不同需要先销毁之前的地图对象。
4. 由于BMapGL是基于WebGL技术实现的,所以相对于BMap会有更高的性能和更好的体验,但是不支持IE浏览器和低版本的Chrome等浏览器。
以下是一个使用BMapGL和BMap的示例代码:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>BMapGL和BMap同时使用示例</title>
<style type="text/css">
#map {
width: 800px;
height: 600px;
}
</style>
</head>
<body>
<div id="map"></div>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=3.0&ak=您的密钥"></script>
<script type="text/javascript" src="http://api.map.baidu.com/api_gl/v1.0/map.js"></script>
<script type="text/javascript">
// 使用BMapGL创建地图
var mapGL = new BMapGL.Map("map");
mapGL.centerAndZoom(new BMapGL.Point(116.404, 39.915), 11);
mapGL.addControl(new BMapGL.NavigationControl());
// 使用BMap创建覆盖物
var map = new BMap.Map("map");
map.centerAndZoom(new BMap.Point(116.404, 39.915), 11);
map.addControl(new BMap.NavigationControl());
var marker = new BMap.Marker(new BMap.Point(116.404, 39.915));
map.addOverlay(marker);
</script>
</body>
</html>
```
阅读全文