Leaflet draw 删除具有属性的特征

问题描述

是否可以通过检查属性值一次从 geojson 中删除多个要素?

使用下面的示例代码还是使用 Leaflet draw?

function deleteArea() {
var layers = featureGroup.getLayers();
for (var i = 0; i < layers.length; i++) {

        if (layers[i].feature.properties.N == 1)
{
        "DELETE?" layer[i];
        };
}
};

我有大地图,有些标记属性:feature.properties.N=1。我可以使用传单绘制逐个删除它们,因为我将这些图层的标记更改为红色。但这需要一些时间.. 可以立即完成吗?

enter image description here

非常感谢您的时间!

解决方法

当然,您可以简单地使用 layer.removeFrom(featureGroup)

从地图/要素组中删除标记
function deleteArea() {
var layers = featureGroup.getLayers();
for (var i = 0; i < layers.length; i++) {
        if (layers[i].feature.properties.N == 1){
            layer[i].removeFrom(featureGroup);
        };
}
};

PS:我更喜欢使用 Leaflet-Geoman,因为它更现代,并且仍然受到支持并获得新功能