Google DirectionsService に問題があります。私はそれが非同期であることを知っており、それが私のトラブルの原因です。回答なしでコードを実行するのではなく、DirectionsService が結果を返すまで待ちたいと思います。以下にサンプルを示します。
function snap_to_road (lat) {
var position;
var request = {
origin: lat,
destination: lat,
travelMode: google.maps.DirectionsTravelMode.DRIVING
};
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
return response.routes[0].legs[0].start_location;
}
});
}
alert(snap_to_road(current.latLng));
alert
常に表示されます:「未定義」。これを解決する方法はありますか?