¿Existe una manera de encontrar datos de diferentes capas y diferentes propertyName
s? Tengo varios archivos de datos GeoJSON, con diferentes propiedades. En este momento solo puedo buscar un GeoJSON.
Para hacer un bucle y llamar a los datos estoy utilizando este código:
maplink_var = [source1.geojson,source2.geojson,etc];
var = new L.GeoJSON(, {
style: function(feature) {
...
},
onEachFeature: function(feature, marker) {
...
}
});
y a continuación está el código para encontrar datos:
var searchControl = new L.Control.Search({
layer: source1,source2,source3,
propertyName: ['propNameSource1','propNameSource2','propNameSource3'],
marker: false,
moveToLocation: function(latlng, title, map) {
var zoom = map.getBoundsZoom(latlng.layer.getBounds());
map.setView(latlng, zoom); // acceder al zoom
}
});
searchControl.on('search:locationfound', function(e) {
e.layer.setStyle({fillColor: '#3f0', color: '#0f0'});
if(e.layer._popup) e.layer.openPopup();
}).on('search:collapsed', function(e) {
featuresLayer.eachLayer(function(layer) {
featuresLayer.resetStyle(layer);
});
});
map.addControl( searchControl );
Obtengo un error si doy un array en el nombre de la propiedad, se queda en carga, y ninguno de los datos aparece.