如何在Mapboxgl中找到所有图层?最终,我想在水面而不是陆地上展示自定义图层

Pra*_*van 12 mapbox-gl mapbox-gl-js

我创建了一个自定义圆圈图层.我想只在水面而不是陆地上展示这一层.我设法使用下面的命令做相反的事情(即:在陆地上而不是在水面上显示图层).请参阅此图片以便更好地理解

map.moveLayer( '多边形', '水');

现在我需要知道mapboxgl使用的land层,以便我可以调用函数map.moveLayer('polygon','land');来实现我想要的.

我需要帮助才能找到mapboxgl-streets地图中的不同图层.但不幸的是,Mapboxgl没有map.eachLayer函数.

Luc*_*ski 29

您可以使用该Map#getStyle方法获取整个样式的序列化表示,包括图层.

map.getStyle().layers
Run Code Online (Sandbox Code Playgroud)


sge*_*elb 1

这取决于您使用的地图样式。一般来说,您要么必须查看其源代码,要么将其加载到 Mapbox Studio 中才能识别正确的图层名称。另请关注https://github.com/mapbox/mapbox-gl-js/issues/4173