Как получить объект yamaps ?

Главные вкладки

Аватар пользователя SYr SYr 23 января 2019 в 18:25

Приветствую!

Господа гуру, подскажите пожалуйста как решить задачу, которая кажется тривиальной, но не получается побороть!
Через модуль yamaps вывожу местоположение объекта в ноде. Все замечательно!

В своем модуле, пытаюсь навесить событие на кнопку, которое в конечном счете, должно взять уже выведенную карту, добавить туда точку положения пользователя и проложить маршрут к существующему балуну.
Застрял на первом этапе – получить объект yamaps. Во всех манах, все начинается с создания : var mymap = new ymaps.Map( … и т.д. Что создает рядом новую карту.


Drupal.behaviors.modulename = {
    attach: function (context, settings) {

В сеттинге есть и ID карты, и объект ее (но не является я так понимаю yamaps объектом). А функций аля ymaps.get(), ymaps.load() не нашел.

Не красиво будет убивать карту, и строить новую!
Подскажите пожалуйста решение.

Спасибо.

Комментарии

Аватар пользователя sas@drupal.org sas@drupal.org 24 января 2019 в 7:58

Создать карту с "местоположение объекта в ноде" и "точкой положения пользователя и проложить маршрут к существующему балуну."

Аватар пользователя SYr SYr 24 января 2019 в 16:20

Спасибо большое!
НО!
скажем так - это опция! должно отображать только "местоположение объекта в ноде" !
А если юзер вздумал туда поехать - жмакнул пимпочку - и увидел путь!

Аватар пользователя sas@drupal.org sas@drupal.org 25 января 2019 в 8:38

У maps yandex можно использовать для карты стандартные инструменты, а можно вывести сценарий кодом, смотри больше на https://tech.yandex.ru/maps/jsbox/2.1/deliveryCalculator
Например
Маршрут от точки на карте https://tech.yandex.ru/maps/jsbox/2.1/route_panel_control
Местоположение пользователя https://tech.yandex.ru/maps/jsbox/2.1/geolocated_map

Аватар пользователя sas@drupal.org sas@drupal.org 25 января 2019 в 9:01

Я Вас понял, не надо получать объект уже созданной карты, надо создать карту и использовать нужный объект из Drupal.settings

Аватар пользователя SYr SYr 25 января 2019 в 9:07

ну, вот этим щась занимаюсь! Smile
Просто странно!
получается пересоздание карты! А старую прибить ... не логично ИМХО
(что бы убрать балун, добавить точки, роут и маштаб)

Спасибо ! Smile

Аватар пользователя sas@drupal.org sas@drupal.org 25 января 2019 в 9:24

> В своем модуле, пытаюсь навесить событие на кнопку, которое в конечном счете, должно взять уже выведенную карту,
На этом уровне Вам придется использовать определенной js событие и данные которые сформированы для карты, доступ к данным js регламентируется областью видимости её переменных, как вариант Вы можете при нанесении объекта на карту ( или это мог сделать автор) дернуть событие например .trigger('chageMapObject' ... и передать туда объект тогда Вы бы в своем модуле могли бы заюзать .bind('chageMapObject'