Как сделать / обработать несколько запросов Google Maps V3 DirectionsRequest? (загрузить слушателя?) - PullRequest
0 голосов
/ 05 декабря 2010

У меня есть скрипт, который пытается перебрать небольшой массив объектов Google Maps DirectionsRequest; Мне нужен способ заставить скрипт ждать ответа DirectionsService, чтобы я мог сохранить результат перед выполнением следующего запроса. -Я знаю, что в старой версии вы могли настроить что-то вроде следующего:

directions = new GDirections(null, null);
directions.load("from: " + fromAddr + " to: " + toAddr);
GEvent.addListener(directions, "load", function() {...});

но документация v3, кажется, имеет дело в основном со слушателями событий карты (мне не нужна карта, только данные о направлениях) С v3 вы должны установить функцию обратного вызова при вызове метода route (). Есть ли элегантный способ приостановить мой цикл, чтобы он не делал новый запрос до того, как предыдущий получит ответ? Или у меня нет выбора, кроме как создать новый экземпляр DirectionsService для каждого запроса?

Спасибо за вашу помощь!

Карл

1 Ответ

0 голосов
/ 05 декабря 2010

В этом примере http://code.google.com/apis/maps/documentation/javascript/examples/directions-draggable.html вы увидите следующую строку:

  google.maps.event.addListener(directionsDisplay, 'directions_changed', function() {
    computeTotalDistance(directionsDisplay.directions);
  });

Надеюсь, это поможет. Спасибо, что задали этот вопрос, потому что я не знал о таком слушателе.

...