プレイスライブラリの検索結果に対し、より詳細な情報を取得しマーカーウィンドウに表示するサンプルコードを作成しました。
(1)サンプルコード
デモ表示へ
(2)サンプルコードの内容
1)プレイス詳細リクエスト
前回、前々回に使用したnearbySearchリクエストやテキスト検索を行うと検索結果がPlaceResultオブジェクトに格納され返されます。
このPlaceResultオブジェクトのreference属性を指定してgetDetails()メソッドを実行して詳細情報を取得します。
var createMarker = function (place) {
  var request = {
    reference: place.reference
  };
  var detail = new google.maps.places.PlacesService($scope.map.control.getGMap());
  detail.getDetails(request, function(result, status) {
    if (status == google.maps.places.PlacesServiceStatus.OK) {
 
2)プレイス詳細結果
 
詳細リクエストの結果は、PlaceResult オブジェクトに格納されて返されます。
このサンプルコードでは下記属性を取得して表示しています。
 
・name:プレイスの名前。
・formatted_phone_number:電話番号計画の形式に従ったプレイスの電話番号
・website:会社のホームページなど、当該プレイスの公式ウェブサイト
・html_attributions:このプレイス結果に対して表示する帰属テキスト
・types: このプレイスのタイプの配列([“political”, “locality”] または [“restaurant”, “establishment”])
 
AngularJS、Googleマップの他の記事の目次