Есть Асинхронная функция инициализации карты. В ней маркеры добавляются из других мест с помощью кастомных событий. Но вот удаляться маркер не хочет. Подскажите, пожалуйста, как это сделать правильно.
async function initMap() {
await ymaps3.ready;
const {
YMap,
YMapDefaultSchemeLayer,
YMapDefaultFeaturesLayer,
YMapMarker,
YMapFeature,
YMapControls
} = ymaps3
const markers = {};
const map = new YMap(
document.getElementById('mainMap'),
{
location: {
center: [37.6080239, 55.7644929],
zoom: 15
},
behaviors: ['drag', 'scrollZoom', 'pinchZoom', 'dblClick'],
zoomStrategy: 'zoomToPointer'
}
);
map.addChild(new YMapDefaultSchemeLayer());
map.addChild(new YMapDefaultFeaturesLayer({zIndex: 1800}));
document.addEventListener('add-marker', function (event) {
const marker = new YMapMarker({})
map.addChild(marker);
markers[event.detail.id] = marker;
});
document.addEventListener('delete-marker', function (event) {
let id = event.detail.id;
map.removeChild(markers[id]);
});
}