Google Places API - 詳細要求を未定義に配置します
-
15-11-2019 - |
質問
Google Placesライブラリを使用して場所の詳細を取得しようとしています。場所マーカーをクリックすると、アドレス、名前、Webサイトなどが表示されます。
次のチュートリアルを使用しています。 http://code.google.com/apis/maps/documentation/javascript/places.html
解決
You're doing a Place Search, which doesn't return all of the fields that you're using:
http://code.google.com/apis/maps/documentation/javascript/places.html#place_search_responses
In order to get the address, website, etc, you'll also need to call place.getDetails()
, passing the Place's reference
. See:
http://code.google.com/apis/maps/documentation/javascript/places.html#place_details_requests
Roughly, your code would change to:
function createMarker(place) {
var placeLoc = place.geometry.location;
var marker = new google.maps.Marker({
map: map,
position: place.geometry.location
});
var request = { reference: place.reference };
service.getDetails(request, function(details, status) {
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent(details.name + "<br />" + details.formatted_address +"<br />" + details.website + "<br />" + details.rating + "<br />" + details.formatted_phone_number);
infowindow.open(map, this);
});
});
}
所属していません StackOverflow