Я работаю над своим проектом листовки. Я использую поиск по Leaflet вместе с Leaflet-markerCluster.
Некоторые из моих маркеров имеют одинаковые координаты. Все, если работает нормально, если маркер, который я ищу, не находится в кластере (я открываю всплывающее окно, когда маркер найден).
Когда я ищу маркер, который находится в кластере, он не откроется, если кластер не был открыт раньше.
Так что, если я прав, мне нужно открыть кластер, прежде чем открыть Popup. Но я не знаю, как это сделать :) Кто-нибудь может мне помочь с этим? Спасибо
Вот код маркераCluster и searchControl:
var markers = L.markerClusterGroup({ maxClusterRadius: 30 });
markers.addLayer(featuresLayer);
mymap.addLayer(markers);
var searchControl = new L.Control.Search({
layer: L.featureGroup([markers]),
propertyName: 'name',
marker: false,
});
searchControl.on('search:locationfound', function(e) {
if (e.layer._popup)
e.layer.openPopup();
}).on('search:collapsed', function(e) {
featuresLayer.eachLayer(function(layer) {
featuresLayer.resetStyle(layer);
});
});
mymap.addControl(searchControl);