Как получить id/данные маркера при вызове onClick API Яндекс Карт
ymaps3
Есть справочник данных, каждая запись привязана к координаторам на карте.
Создал маркеры.
const response = await fetch('data.json');
const markers = await response.json();
markers.forEach(mr => {
map.addChild(
new YMapDefaultMarker({
coordinates: [mr.coordinates[0], mr.coordinates[1]],
title: mr.title,
subtitle: mr.subtitle,
onClick: handleMarkerClick,
})
);
Необходимо по клику на маркер выводить хранимую в markers информацию.
Прошу подсказать как в функции
const handleMarkerClick = (obj) => { }
получить доступ к данным исходного массива?
Можно-ли хранить все нужные данные внутри маркера?
Ответы (1 шт):
Автор решения: ksa
→ Ссылка
Прошу подсказать как в функции
const handleMarkerClick = (obj) => { }получить доступ к данным исходного массива?
Можно сделать простую функцию-обертку. Т.о. исходной функции будут доступны любые данные через замыкание.
const handleMarkerClick = data => (obj) => { }
Вот так можно использовать функцию-обертку
// начало кода
onClick: handleMarkerClick(mr)
// продолжение