首先,使用离线百度地图首先需要准备好瓦片图,由于资源内容较大不适合直接放在项目中,因此使用nginx代理
server {
listen 80;
server_name 127.0.0.1;
location / {
root E:/BMap/baidumaps; //配置本地百度地图离线资源路径
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
在public目录下新建BMap文件夹存放所需要的静态资源。
具体需要的文件有:
- 离线地图包 (main.js)
- modules文件(百度地图提供的各种图层类,标记类,控件类等等都可以看作是modules,使用这些功能需要加载对应的模块js文件)
- css样式
- 基础图片(包括marker在内的各种图标)
- 各个控件对应的js文件(比如绘图工具等)
- 创建mapApi.js文件,配置离线地图的路径指向:
var bmapConfig = {
//填写本地的nginx代理地址,指向离线瓦片图资源
'tiles_path': 'http://192.168.0.22/maptile',
'home': ''
};
(function() {
//动态获取离线地图包的路径的函数