Posted at

GoogleMap APIでPromiseを使う

ルート検索の際のコールバックをPromise化してみる

        /**

* ルート検索結果をPromiseに包んで返す
*/

function routePromise(request) {
return new Promise(function(resolve, reject) {
var d = new google.maps.DirectionsService();
d.route(request, function(result, status){
if (status == google.maps.DirectionsStatus.OK) {
resolve(result);
} else {
reject(status);
}
});
});
}

これで、呼び出しの際に以下のように使える。

var result = await routePromise(request);

参考: How to use Promise in Google Map?