Я работаю над приложением , где пытаюсь очистить предыдущий слой Leaflet Geo JSON в пользу текущего. Я пробовал оба map.removeLayer(geojsonPoint)
и map.clearLayer(geojsonPoint)
, но ни один из них, похоже, не работает в моей функции. Вот как я пытаюсь это решить:
function addPoints(geoJsonMain, responseJson) {
console.log(geoJsonMain);
let pointData = L.geoJSON(geoJsonMain);
for (let j = 0; j < responseJson.data.length; j++) {
for (let i = 0; i < geoJsonMain.features.length; i++) {
// console.log(geoJsonMain.features[i].properties.stateCode);
if (geoJsonMain.features[i].properties.stateCode !== responseJson.data[j].states) {
map.removeLayer(pointData)
// console.log(geoJsonMain.features[i].properties.stateCode, ' ', responseJson.data[j].states)
} else {
pointData.addTo(map);
map.fitBounds(pointData.getBounds());
}
}
}
}
, но когда у меня есть removeLayer (pointData), он ничего не очищает. Почему он не очищает текущий слой L.geo JSON? Пожалуйста, обратитесь к связанному repl.it для полного макета. Он ищет сокращения штата (например, NY, N C, S C, et c)