GoogleのMapsAPIとそのPlacesServiceに問題があります。場所ライブラリが正しく読み込まれていても、「未定義のプロパティ 'PlacesService'を読み取れません」と表示され続けます。マップ自体が機能し、ロードされます。何か案は?コードは次のとおりです。
<div id="map-canvas"></div>
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?v=3&libraries=places"></script>
<script type="text/javascript">
var myLatlng;
var map;
var marker;
function initialize() {
myLatlng = new google.maps.LatLng(fooLat, fooLng);
var mapOptions = {
zoom: 17,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP,
scrollwheel: false,
draggable: true
};
map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
var service = new google.maps.places.PlacesService(map);
var request = { placeId: 'fooPlaceId'};
service.getDetails(request, callback);
function callback (place, status) {
if (status == google.maps.places.PlacesServiceStatus.OK) {
marker = new google.maps.Marker({
position: place.position,
map: map,
title: place.name
});
}
};
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
更新:私は文字通りコードの一部を試しました Google自体から そしてそれは私に同じエラーを与えました。
この例では、Placesライブラリが必要です。 APIキーを使用してAPIを最初にロードするときに、libraries=places
パラメーターを含めます。
例えば:
<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&libraries=places">