Ich verwende Mapbox Directions in einer Javascript-App, um Geometrie und Routing-Daten (zwischen zwei Lat/lange Paare) erfolgreich an den Browser zurückgeben. Ich versuche schließlich, die Routen-Polylinie anzuzeigen, die sie auf einer Karte verbindet, aber ich kann auf die Richtungsdaten des Ergebnisobjekts nicht zugreifen, obwohl die Daten vorhanden sind. HierMapbox Richtungen: So extrahieren Wegbeschreibung Daten aus Ergebnis
ist die Anforderungs-Code:
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);
Notiere die console.dir Linie. Dies ist, was ich in der Konsole für die Routen sehen:
_initHooksCalled:true
_query:null
_requests:Array[0]
_waypoints:Array[0]
destination:Object
directions:Object
options:Object
origin:Object
Dies ist, was ich in der Konsole für die route.destination sehen, route.options und route.origin Objekte:
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"}
Aber wenn Ich versuche route.directions zu sehen, es ist nicht definiert.
console.log(route.directions);
=> undefined
Wenn „Öffnen“ das ganze Strecke Objekt in der Konsole (über console.dir) Ich sehe die Richtungen Daten die ich suche:
directions:Object
destination:Object
origin:Object
routes:Array[2]
0:Object
distance:10460
duration:862
geometry:Object
steps:Array[26]
...
Warum sollte dies „undefiniert“ sein, wenn Zugriff auf es mit route.directions, vor allem, wenn ich Inhalte der anderen "Unterobjekte" (zB route.options) mit der gleichen Punktsyntax sehen kann? Schließlich
, wenn ich "stringify" die Route Objekt var routeJson = JSON.stringify(route);
Ich sehe dies:
{"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":{}}
Wieder keine Richtungen Inhalt! Irgendwelche Gedanken würden sehr geschätzt werden!
Vielleicht werden diese Informationsbits zurückgegeben, wenn Sie die Parameter 'instructions' und/oder' geometry' übergeben? Die Dokumentation ist ein wenig vage ... –