Leaflet удалить слой (слои) GeoJSON - PullRequest
0 голосов
/ 05 ноября 2018

Я раскрашиваю области на карте, создавая слои GeoJSON в листовке. Сначала я создаю пустой слой:

var layerPostalcodes=L.geoJSON().addTo(map);

Затем я создаю элемент geojson, содержащий информацию о форме, и добавляю его в слой:

layerPostalcodes.addData(geojson);

Это отображает области на карте правильно. Теперь одним нажатием кнопки я хочу удалить все фигуры с карты. Это не работает. Я пробовал несколько подходов:

layerPostalcodes.clearLayers();

или через LayerGroup, добавив к нему слой GeoJSON, чтобы я мог использовать removeLayer (). Но это даже не отображает формы, не говоря уже об их удалении.

var layerGroup = new L.LayerGroup();
layerGroup.addLayer(layerPostalcodes);
layerGroup.addTo(map);
layerGroup.removeLayer(layerPostalcodes);

Что я делаю не так?

1 Ответ

0 голосов
/ 05 ноября 2018

Добавьте layerGroup на карту, прежде чем добавить layerPostalCodes к ней.

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);
...