百度地图 osm地图 leaflet echarts webapck的组合使用时的踩坑记录
webpack+百度地图
创建 script标签进行加载
export function MP(ak){ return new Promise(function (resolve, reject){ window.onload = function () { resolve(BMap) } var script = document.createElement("script"); script.type = "text/javascript"; script.src = "http://api.map.baidu.com/api?v=2.0&ak="+ak+"&callback=init"; script.onerror = reject; document.head.appendChild(script); }); }
使用:
import {MP} from './map.js'; MP("your ak").then(BMap => { // do something })
webpack+百度地图+echart
需要
1 百度地图
2 echart
3 bmap.min.js 添加扩展,用于让百度地图支持echart https://github.com/apache/inc...
webpack+osm地图+leaflet
可能会遇见两个问题:
1 地图图片错位 忘记加载leaflet.css
2 webpack 中使用leaflet 的一个主要问题是默认图标的加载问题,详见
https://segmentfault.com/q/10...
另外也可以考虑使用动态创建<script>标签的方法,类似百度地图加载
webpack+百度地图+leaflet
因为leaflet本身支持的是WGS84的坐标系 ,而百度地图在中国使用的是百度坐标系,所以如果要在百度地图中使用leaflet的话,一是需要绘图数据变更为百度地图的BD09坐标系,二是需要对leaflet添加扩展,使其在进行经纬度坐标转化时使用百度地图的映射系统
解决方案: http://tiven.wang/articles/us...
以上问题的代码示例 https://gitlab.com/dahou/maps