前端地图:Leaflet 矢量图层与性能要点
Leaflet
前端地图
性能
用 GeoJSON + Canvas 渲染,避免 DOM 标记过多卡顿。
前置要求
熟悉 JS、基础 Leaflet API。
分步实操
fetch("/data/roads.geojson")
.then(r => r.json())
.then(geojson => {
L.geoJSON(geojson, {
style: { color: "#165DFF", weight: 2 },
renderer: L.canvas()
}).addTo(map);
});
风险提示:超大 GeoJSON(>5MB)请先切片或使用矢量瓦片,避免一次性加载。
优化方案
- 使用 Canvas renderer
- 按视野过滤要素
- 简化线面精度