删除 Mapbox GL JS 上的所有标签?
Remove all labels on Mapbox GL JS?
我正在使用 Mapbox Dark v9
样式并想删除所有标签。
我找到了标签列表 here。
并尝试使用 map.removeLayer
函数删除其中一些,例如:
map.removeLayer("place_label");
以及:
map.removeLayer("place-city-lg-n");
map.removeLayer("place-city-lg-s");
map.removeLayer("place-city-md-n");
map.removeLayer("place-city-md-s");
map.removeLayer("place-city-sm");
有没有办法从样式中删除标签?
如果您只是在寻找没有标签的深色底图——即在运行时以编程方式删除它们并不重要——您可以使用深色模板在 Mapbox Studio 中创建新样式并使用样式编辑器到 select 并删除所有标签层。然后您可以发布该样式并在您的应用中使用它 url。
如果在运行时删除所有标签层对您来说很重要,您可以执行类似
的操作
map.style.stylesheet.layers.forEach(function(layer) {
if (layer.type === 'symbol') {
map.removeLayer(layer.id);
}
});
我正在使用 Mapbox Dark v9
样式并想删除所有标签。
我找到了标签列表 here。
并尝试使用 map.removeLayer
函数删除其中一些,例如:
map.removeLayer("place_label");
以及:
map.removeLayer("place-city-lg-n");
map.removeLayer("place-city-lg-s");
map.removeLayer("place-city-md-n");
map.removeLayer("place-city-md-s");
map.removeLayer("place-city-sm");
有没有办法从样式中删除标签?
如果您只是在寻找没有标签的深色底图——即在运行时以编程方式删除它们并不重要——您可以使用深色模板在 Mapbox Studio 中创建新样式并使用样式编辑器到 select 并删除所有标签层。然后您可以发布该样式并在您的应用中使用它 url。
如果在运行时删除所有标签层对您来说很重要,您可以执行类似
的操作map.style.stylesheet.layers.forEach(function(layer) {
if (layer.type === 'symbol') {
map.removeLayer(layer.id);
}
});