Yandex map api данные для clusterIconLayout
const init = () => {
myMap = new ymaps.Map('map', {
center: [41.651107, 41.636269],
zoom: 13,
controls: ['zoomControl']
})
clusterer = new ymaps.Clusterer({
clusterIconLayout: ymaps.templateLayoutFactory.createClass(
`<div class="map__object"><div class="map__object-content"><div class="map__object-quantity">{{properties.geoObjects.length}}</div></div></div>`
),
groupByCoordinates: true,
openHintOnHover: false,
clusterIconShape: {
type: 'Circle',
coordinates: [0, -16],
radius: 24
}
})
}
const updateMapMarkers = () => {
array.forEach((item) => {
const coords = [item.coords.lat, item.coords.lng]
const placemark = new ymaps.Placemark(
coords,
{
iconContent: VALUE,
customData: {
id: item._id
}
},
{
iconLayout: ymaps.templateLayoutFactory.createClass(
`<div>$[properties.iconContent]</div>`
),
}
)
clusterer.add(placemark)
})
myMap.geoObjects.add(clusterer)
}
Как в каждом кластере clusterIconLayout получить массив данных геобъектов ({properties.iconContent} - VALUE), чтобы найти минимальное значение value и вывести его вместо {properties.geoObjects.length}
Ответы (1 шт):
Автор решения: YaSupport
→ Ссылка
Для получения массива геообъектов, добавленных в кластеризатор, используйте функцию getGeoObjects(). Чтобы получить координаты объектов, вы можете использовать .geometry._coordinates для IGeoObject. Если необходимо получать другие свойства геообъектов в кластере, используйте аналогичные обращения к свойствам геообъектов.