Saltar al contenido

¿Cómo eliminar todas las capas y características del mapa?

Juan, miembro de nuestro staff, nos ha hecho el favor de redactar este tutorial porque domina perfectamente el tema.

Solución:

Recorra todas las capas añadidas al mapa usando el eachLayer método de L.Mapluego llama al removeLayer método de L.Map en cada uno de ellos:

map.eachLayer(function (layer) 
    map.removeLayer(layer);
);

Referencias:

eachLayer: http://leafletjs.com/reference.html#map-eachlayer

removeLayer: http://leafletjs.com/reference.html#map-removelayer

Tenga en cuenta que esto eliminará TODAS las capas de su mapa. Eso significa también cualquier capa de mosaico, etc. Creo que en su caso sería mejor si no agrega todas sus capas de características a la instancia del mapa, sino que crea un grupo para ellas:

// Create group for your layers and add it to the map
var layerGroup = L.layerGroup().addTo(map);

$.getJSON('distributor-companies', function (data) 

    $.each(data, function (i, item) 
        if (item.geojson != '') 
            // Add the new featureLayer to the layerGroup
            var featureLayer = L.mapbox.featureLayer().addTo(layerGroup);
            $.getJSON('/geojson/' + item.geojson, function (data) 
                featureLayer.setGeoJSON(data);
                featureLayer.eachLayer(function (layer) 
                    layer.on('click', function (e) 
                        map.fitBounds(featureLayer.getBounds());
                    );
                );
            );
        
    );
);

Ahora puedes llamar al clearLayers método de L.LayerGroup que borrará las capas actuales en el grupo:

layerGroup.clearLayers();

Referencia:

L.LayerGroup: http://leafletjs.com/reference.html#layergroup

clearLayers: http://leafletjs.com/reference.html#layergroup-clearlayers

Puede usar la siguiente verificación de veracidad para ver si es un objeto geoJSON válido:

map.eachLayer(function(layer) 
  if (!!layer.toGeoJSON) 
    map.removeLayer(layer);
  
);

Si crees que ha sido provechoso nuestro post, sería de mucha ayuda si lo compartieras con otros entusiastas de la programación de este modo contrubuyes a extender este contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *