Получение ошибки «InvalidValueError: setCenter: не LatLng или LatLngLiteral: в свойстве lng: не число», даже если значения являются числами

#javascript #api #google-maps #google-maps-api-3

#javascript #API #google-карты #google-maps-api-3

Вопрос:

Пытаюсь инициализировать карту с помощью API карт Google. Введите широту и долготу для центра в виде чисел. Получение ошибки, в которой говорится, что они не являются numebrs.

 var map; // Variable used to create new map
var mapDiv = document.getElementById('ippudo-map'); // Location of the map in the html

// Create a function to initialize the map

function initMap() {
  map = new google.maps.Map(mapDiv, {
    center: {lat: 42.3601, long: 71.0589},
    zoom: 8
  });
}
  

Комментарии:

1. Ты решил это? Я получаю эту ошибку, даже если я parseFloat() значения. Не могу понять, почему….

Ответ №1:

Согласно документации Google Maps JavaScript API, LatLngLiteral интерфейс имеет два поля: lat и lng .

https://developers.google.com/maps/documentation/javascript/reference/coordinates#LatLngLiteral

В вашем примере вы используете long вместо lng . Вы должны исправить неправильное имя поля

 function initMap() {
    map = new google.maps.Map(mapDiv, {
        center: {lat: 42.3601, lng: 71.0589},
        zoom: 8
    });
}
  

Я надеюсь, что это поможет!