Я использую Mapbox Directions в приложении javascript для успешного возврата данных геометрии и маршрутизации (между двумя парами широты и долготы) в браузер. Я пытаюсь отобразить -- в конце концов -- ломаную линию маршрута, соединяющую их на карте, но я не могу получить доступ к данным о направлениях из объекта результата, хотя данные есть.
Вот код запроса:
L.mapbox.accessToken ='pk.eyJ1Ij...9Uk_Z8JqMOQ';
L.mapbox.id = 'tom...ibb';
var startLatLng = L.latLng(38.935899, -77.022353);
var endLatLng = L.latLng(38.90, -77.10);
var directions = L.mapbox.directions();
directions.setOrigin(startLatLng);
directions.setDestination(endLatLng);
var route = directions.query();
console.dir(route);
Обратите внимание на строку console.dir. Вот что я вижу в консоли для маршрута:
_initHooksCalled:true
_query:null
_requests:Array[0]
_waypoints:Array[0]
destination:Object
directions:Object
options:Object
origin:Object
Вот что я вижу в консоли для объектов route.destination, route.options и route.origin:
console.log(route.destination);
=> Object {type: "Feature", geometry: Object, properties:...
console.log(route.origin);
=> Object {type: "Feature", geometry: Object, properties:...
console.log(route.options);
=> Object {units: "imperial"}
Но когда я пытаюсь увидеть route.directions, он не определен.
console.log(route.directions);
=> undefined
При «открытии» всего объекта маршрута в консоли (через console.dir) я вижу данные о направлениях, которые я ищу:
directions:Object
destination:Object
origin:Object
routes:Array[2]
0:Object
distance:10460
duration:862
geometry:Object
steps:Array[26]
...
Почему это будет «неопределенным» при доступе к нему с помощью route.directions, особенно когда я могу видеть содержимое других «подобъектов» (например, route.options), используя тот же точечный синтаксис?
Наконец, когда я "строю" объект маршрута var routeJson = JSON.stringify(route);
, я вижу это:
{"options":{
"units":"imperial"
},
"_waypoints":[],
"_initHooksCalled":true,
"origin":{
"type":"Feature",
"geometry":{
"type":"Point",
"coordinates":[-77.022353,38.935899]
},
"properties":{"query":[-77.022353,38.935899]}
},
"destination":{
"type":"Feature",
"geometry":{
"type":"Point",
"coordinates":[-77.1,38.9]},
"properties":{"query":[-77.1,38.9]}
},
"_requests":[],
"_query":{}}
Опять же, НЕТ содержания направлений! Любые мысли будут очень признательны!
instructions
и/илиgeometry
, эти биты информации будут возвращены? Документация немного расплывчата... - person Steve Bennett   schedule 26.03.2016