我通过在传单中创建 GeoJSON 图层来为 map 上的区域着色。首先我创建一个空层:
var layerPostalcodes=L.geoJSON().addTo(map);
然后我创建一个包含形状信息的 geojson 元素并将其添加到图层:
layerPostalcodes.addData(geojson);
这将正确显示 map 上的区域。现在,单击一个按钮,我想从 map 中删除所有形状。这是行不通的。我尝试了几种方法:
layerPostalcodes.clearLayers();
或通过 LayerGroup,通过向其中添加 GeoJSON 层,以便我可以使用 removeLayer()。但是,这甚至不显示形状,更不用说删除它们了。
var layerGroup = new L.LayerGroup();
layerGroup.addLayer(layerPostalcodes);
layerGroup.addTo(map);
layerGroup.removeLayer(layerPostalcodes);
我究竟做错了什么?
最佳答案
在将 layerGroup
添加到 map 之前,先将 layerPostalCodes
添加到 map 。
var layerGroup = new L.LayerGroup();
layerGroup.addTo(map);
layerGroup.addLayer(layerPostalcodes);
layerGroup.removeLayer(layerPostalcodes);
或者
var layerGroup = new L.LayerGroup();
layerGroup.addTo(map);
layerGroup.addLayer(layerPostalcodes);
map.removeLayer(layerGroup);
关于javascript - 传单删除 GeoJSON 层,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53154473/