# Baidu-Intranet **Repository Path**: traceless-123/baidu-intranet ## Basic Information - **Project Name**: Baidu-Intranet - **Description**: 内网环境使用百度地图-用例-注意事项 - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 19 - **Forks**: 9 - **Created**: 2023-12-21 - **Last Updated**: 2025-09-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 内网离线-使用百度原生地图 ##### 须知 1.首先先阅读文件介绍了解之后,把项目运行测试之后在修改 2.详细讲解:csdn博客:https://blog.csdn.net/weixin_53579656/article/details/135140866?spm=1001.2014.3001.5501 ##### 文件介绍-public/static-百度地图压缩资源文件,迁移到别的项目时整个文件直接搬过去 - images:地图中图标,例如:树、建筑物等 - modules: 所需要的js模块 - bmap_offline_api_v3.0.min.js: 创建地图,包含各种地图上操作的api等 - m4.png: 聚合图标,上图中的紫色图 - map_load.js: 初始化一些全局变量,包括文件路径,瓦片图加载路径,动态加载bmap_offline_api_v3.0.min.js文件等 - MarkerClusterer_min.js: 实现点聚合 - TextIconOverlay_min.js: 点聚合相关 ##### 文件介绍-public/index.html-引入上面地图资源包,迁移到别的项目时整个文件直接搬过去(3个) - 不引入会报错windows.BMap ##### 文件介绍-utils工具文件-map-resource/压缩包-地图瓦片图下载程序 - 直接解压-默认会在c盘下添加一个MapDownload文件夹 - 解压之后-打开文件夹-点击imaps.exe打开程序 - 打开程序-左上角-地图-选择自己需要地图 ##### 文件介绍-utils工具文件-map-image/压缩包-下载好的瓦片图 - 文件太大-放在csdn: - win+r-打开cmd-npm全局安装serve - ``` npm install -g serve ``` - 解压压缩包-进入baidumaps文件夹-上面打开cmd窗口运行命令-serve - ``` serve ``` - 看到端口号-运行成功 ##### 优缺点-须知 ##### 须知 1.内网离线情况下我们访问不了百度数据资源,所有只有把数据资源下载在本地启动服务才可以解决这个问题 2.确实可以满足基本的需求 3.地图放大,缩小,控件,定位 4.加载那里的地图我们首先要下载地图瓦片图,然后地图中心点定位在哪里就会加载的地图 5.地图的放大等级我们要控制起来,因为是下载的瓦片图要对应 6.瓦片图下载等级最好下载,11-15,刚好铺满全屏,再多就下载很慢 7.开发时候我们用npm下载serve,把地图资源从本机运行起来(直接serve) 8.所有地址最好写127.0.0.1和localhost方便测试(因为你后续直接断开网线测试时候,你就只能访问自己) ##### 瓦片图加载报错-404解决 1.瓦片图,就是把一个地图区域根据放大等级分割成等额大小图片进行加载 1.首先确定地图中心点经纬度和下载地图瓦片图是否是一致的 2.瓦片图下载等级和代码地图限制放大等级是否一样(比如地图放大19级,但是下载地图没有19级图片也会报错) 3.用serve启动好本地图片资源后-查看map_load.js文件(一般默认不用改) 4..把404图片路径复制到本机浏览器看是否能访问 ##### 优点 1.引入项目比较轻便-确实在内网情况下可以使用(不能访问外网情况下-离线) ##### 缺点 1.鼠标滚动的时候,会调用百度的api报错,但不影响使用 2.百度api会失效,比如逆地址解析,没有建立百度资源连接带身份(就是没有在public/index-正常引入百度地图) 3.如果单纯地图展示看,定位-可以,要使用api不满足-目前还没找到解决方案