经纬志
首页 / OpenLayers / 使用示例

Mapbox 样式图层

把样式 JSON 里的图层数组编译成 OpenLayers 的图层与样式。

OpenLayers 10.3.1 · 更新 2026-10-28
源码与运行效果
运行效果

说明

Mapbox 样式是「数据源 + 图层数组」的结构,每个图层用 filter 选要素、用 paint 描述外观。

官方示例用 ol-mapbox-style 库整体转换。这里只实现 ==、in 两种过滤表达式与 fill、line、circle 三类绘制属性,足以覆盖这份样式。

要点

  • 一个样式层对应一个 ol.layer.Vector,源里只放通过过滤的要素。
  • fill-outline-color 对应 ol.style.Stroke。
  • 三个开关直接切换图层可见性,不影响其他层。

过滤条件放在源上比写在样式函数里省事,图层还能顺带精简要素。