Думаю, многие слышали про Реакт — это такой подход к описанию интерфейсов. Штука чрезвычайно популярная, судя по количеству звёзд на гитхабе (их больше сорока тысяч).
Интерактивная карта на веб-странице легко описывается в реактовских терминах, что избавляет разработчика от рутинного яваскрипта. В простейшем случае достаточно добавить всего один тег с начальными настройками, в чуть более сложном — отдельными тегами описать слои и всякие панельки. Минимальный рабочий результат выглядит так: <MySuperMap center={ [45, 53.1] } zoom=15 />.
Мне попадались реактовские обёртки для Лифлета и Гуглокарт, а вот для карт от Яндекса такой не нашлось. Вдруг волшебный тег <YandexMap /> уже кем-то написан, просто его не так легко обнаружить? Поделитесь, пожалуйста, ссылкой, если видели!
Если реактовский компонент для карт — штука пока несуществующая, хочу обратить внимание на это ребят из Яндекса. Мне кажется, тут просматривается упущенная выгода :–) Судя по тенденциям последней пары лет, огромное количество интерфейсов будут состоять именно из реактовских компонентов. Возможность встроить карту от Яндекса так же просто, как сегодня тот же Лифлет — важное конкунретное преемущество, которое не стоит недооценивать.
Сейчас я работаю над проектом, первая фаза которого — перевод старого интерфейса сайта под Реакт без изменений. Именно такое ограничение привело меня на этот форум и не дало тихо перепрыгнуть на другой движок для карт, который уже совместим с Реактом. Надеюсь, какое-то решение получится найти.
Вот чего хочется от компонента <YandexMap />:
- динамическая подргузка скрипта с АПИ при первом отображении компонента (многостраничное веб-приложение не должно генерировать лишний трафик, пока пользователь не переключился на страницу с картой),
- возможность задавать базовые настройки карты (центр, масштаб, режимы, кнопки, границы перемещения и масштаба),
- возможность добавлять пользовательские кнопки с самописными обработчиками (например, «вернуть исходный вид карты»),
- возможность отображать пользовательскую карту, сделанную в конструкторе (часто это схема проезда со стрелочками).
- в идеале: отображение статичной карты для тех, у кого отключен яваскрипт или при печати
Клуб, помоги с Реактом — не дай мне отчаяться и уйти к забугорному аналогу Яндекс.карт! :–)