在Google地图API中将地点ID位置传递到目的地 [英] Pass Place ID location to destination in Google Maps API
问题描述
我试图弄清楚如何动态地将Google Places位置的几何位置传递给路线服务请求目的地。如果我使用
service.getDetails({
placeId:'ChIJy_YmBMEMIocRZF8r5wPFMYU'
},函数(place ,状态){
if(status === google.maps.places.PlacesServiceStatus.OK){
var marker = new google.maps.Marker({
map:map,
位置:place.geometry.location,
图标:'img / pillicon.jpg'
});
}
来获得位置,然后我可以如何将它传递给我的请求,像这样
var request = {
origin:currentLoc,
destination:place.geometry.location,//不知道这个
travelMode:google.maps.DirectionsTravelMode.DRIVING
};
我试过返回place.geometry.location,然后调用它,并将其转换到一个字符串,但我仍然无法访问它。谢谢我是新来的JavaScript
最简单的方法:直接将 placeId
传递给 DirectionsRequest code snippet:
var geocoder; var map; var service; var directionsService = new google.maps.DirectionsService(); var directionsDisplay = new google.maps.DirectionsRenderer(); var curLoc = new google.maps.LatLng(35.0853336,-106.6055534); function initialize(){var map = new google.maps.Map(document.getElementById(map_canvas), {center:new google.maps.LatLng(37.4419,-122.1419),zoom:13,mapTypeId:google.maps.MapTypeId。 ROADMAP}); directionsDisplay.setMap(地图); calculateAndDisplayRoute(curLoc,{placeId:'ChIJy_YmBMEMIocRZF8r5wPFMYU'},directionsService,directionsDisplay);}函数calculateAndDisplayRoute(start,end,directionsService,directionsDisplay){directionsService.route({origin:start,destination:end,travelMode:google.maps.TravelMode .DRIVING},function(response,status){if(status === google.maps.DirectionsStatus.OK){directionsDisplay.setDirections(response);} else {window.alert('Directions requests failed to +'status') ;}});} google.maps.event.addDomListener(window,load,initialize);
html,body,#map_canvas {height:100%;宽度:100%; margin:0px; < script src =https:// //maps.googleapis.com/maps/api/js\"></script><div id =map_canvas>< / div>