Клик по иконке кластера
Как можно добавить функцию на клик по иконке кластера, которая зумить до того положения, в котором уже начинают появлятся маркеры?
Примерно вот так создаю кластер:
const clusterer = new YMapClusterer({
method: clusterByGrid({ gridSize: 64 }),
features: points,
marker: feature =>
new YMapMarker(
{
coordinates: feature.geometry.coordinates,
source: 'clusterer-source',
},
createClusterMarkerHtmlElement(feature)
),
cluster: (coordinates, features) =>
new YMapMarker(
{
coordinates,
source: 'clusterer-source',
},
createClusterCircleHtmlElement(features.length)
),
})
Ответы (1 шт):
Автор решения: Dmitriy
→ Ссылка
В голову пришла только такая реализация. Буду рад, если кто-то предложит более лаконичный вариант
const clusterer = new YMapClusterer({
method: clusterByGrid({ gridSize: 64 }),
features: points,
marker: feature =>
new YMapMarker(
{
coordinates: feature.geometry.coordinates,
source: 'clusterer-source'
},
createClusterMarkerHtmlElement(feature)
),
cluster: (coordinates, features) => {
const marker = new YMapMarker(
{
coordinates,
source: 'clusterer-source',
},
createClusterCircleHtmlElement(features.length)
)
//@ts-ignore
const clusterMarkerCoordinates = marker._props.coordinates
if (marker.element) {
marker.element.onclick = () => {
map?.setLocation({
center: clusterMarkerCoordinates,
duration: 500,
zoom: map.zoom + 3,
})
}
}
return marker
},
})