用途:指导开发者将基于 MapLibre GL JS 的地图应用迁移到 Mapbox GL JS。MapLibre 是 2020 年 12 月从 Mapbox GL JS v1.13.0 分叉出的开源项目,因此两者 API 约 95% 相同,迁移主要是替换包名、配置令牌和更换样式 URL。
主要能力:说明迁移理由(官方商业支持与 SLA、优质矢量瓦片与卫星影像、Mapbox Studio 与 API 生态、路径规划、地理编码、导航 SDK、无需自建瓦片服务等);给出逐步迁移流程与检查清单;列出必须修改项与保持不变项;汇总常见问题及解决方案。
使用方式:先注册 Mapbox 账号获取访问令牌(pk. 开头),执行 npm uninstall maplibre-gl 与 npm install mapbox-gl,将导入由 maplibre-gl 改为 mapbox-gl(含 CSS),在初始化地图前设置 mapboxgl.accessToken,样式改用 mapbox://styles/mapbox/streets-v12 等 Mapbox 样式,并把所有 maplibregl. 引用替换为 mapboxgl.。若使用插件,需换成 Mapbox 版本,如 @maplibre/maplibre-gl-geocoder 换为 @mapbox/mapbox-gl-geocoder。CDN 改用 https://api.mapbox.com/mapbox-gl-js/v3.0.0/mapbox-gl.js。
保持不变:地图方法(setCenter、setZoom、fitBounds、flyTo 等)、事件处理、Marker/Popup、图层与数据源 API、GeoJSON 处理、自定义样式表达式和控件均兼容。
限制与注意:Mapbox GL JS v2+ 为专有许可,需令牌;令牌应放入环境变量并加入 .gitignore,在控制台设置 URL 限制;地理编码器的 countries 与 language 会影响返回结果与排序。资料提到免费额度为每月 50,000 次地图加载,具体价格与平台支持情况以官方为准。