ymaps actionend - как отключить событие для map.panTo? или аналог dragend от google?
Вопрос по яндекс картам.
Есть ли в яндекс картах событие dragend как в гугл картах?
Есть следующий алгоритм
- Перетаскивание карты (drag или мышью)
- Детект адреса по координатам (обращение к api) => .then
- this.map.panTo(center) - передвижение карты на ближайший адрес
Проблема заключается в том, что ymap реагирует на действие пользователя и на panTo - одинаково. Вызывает событие actionend.
Вопросы
- Есть ли событие как dragend в googleMaps
- Можно ли задетектить, что собитие было вызвана с помощью
this.map.panTo||this.map.setCenter?
Пример кода - набросок
this.map.events.add('actionend', e => {
const state = this.map.action.getCurrentState();
const zoomLevel = state.zoom;
this.calcAddress()
.then(({ center }) => {
this.map.panTo(center, zoomLevel)
});
});
Ответы (1 шт):
Автор решения: YaCor'
→ Ссылка
В API Яндекс.Карт actionend будет приходить всегда. panTo возвращает Promise, подпишитесь на него.