Я использую API Карт Google для JS, и у меня есть несколько маркеров на карте.У меня есть некоторый код для отображения адреса и имени каждого маркера на карте, но адрес иногда возвращается как неопределенный, но иногда это работает.
function createMarker(place) {
console.log("adding place " + place.name + " loc=" + place.geometry.location.toUrlValue(6));
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("<b>" + place.name + "</b><br />" + details.formatted_address + "<br /> <a href=" + details.website + ">Visit Website</a>");
infowindow.open(map, this);
});
});
}
Иногда, когда я нажимаю на маркер (который должен отображать информационное окно), он выдает ошибку вместо отображения окна.Ошибка:
Uncaught TypeError: Cannot read property 'formatted_address' of null
Почему это происходит?Если код правильный, есть ли вероятность, что Google не знает адрес всего?Может ли кто-нибудь помочь мне исправить это?