обновить путевые точки на direction_changed

Я сделал себе менеджер маршрутов с парой опций (таких как избежать дорожных сборов, режим путешествия, избежать путевых точек шоссе) и перетаскивать маршруты.

Я создал var lastRequest = [] для хранения свойств DirectionsRequest из последнего рендеринга.

Код выглядит следующим образом:

directionsService.route(request, function(response, status) {
    if (status == google.maps.DirectionsStatus.OK) {
        var directions = parseDirections(response, mode, tolls)
        directionsDisplay.setDirections(response)
    }
});

google.maps.event.addListener(directionsDisplay, 'directions_changed', function() {
    refreshReq(directionsDisplay.getDirections())
})

function refreshReq(response)
{
    //
}

Я не могу найти решение для обновления directions_changed моего lastRequest['waypoints'] с новыми данными из response, поэтому мой скрипт сможет хранить объект путевых точек и повторять lastRequest в любое время.

Трудности возникают, когда я беру из response массив путевых точек, как мне нужно

Пробовал пару вариантов:
lastRequest['waypoints'] = response['routes'][0][' leg'][0]['via_waypoints']
но это было не то.

Следующим шагом было воссоздание каждой путевой точки по одной с помощью new google.maps.LatLng(), но по какой-то причине это не сработало даже после того, как я поместил их в массив с помощью eval().

Изменил промежуточную остановку на false/true, пробовал разные вещи, но ничего, должно быть что-то упустил.

8
задан hitautodestruct 10 March 2013 в 15:49
поделиться