2017-05-05 4 views
1

Ich habe einige Probleme mit der Entfernung auf Google Maps API zu lesen, aber immer noch nicht für mich arbeiten. Hier ist mein Code:Google Maps - computeDistanceBetween funktioniert nicht

function initMap() { 
    var loc1 = new google.maps.LatLng(37.772323, -122.214897); 
    var loc2 = new google.maps.LatLng(34.1633766,-81.6487862); 

    console.log(google.maps.geometry.spherical.computeDistanceBetween(loc1,loc2)); 
} 

Dies ist, wie ich Bibliothek nennen:

<script src="https://maps.googleapis.com/maps/api/js?libraries=geometry,places&key=MY_KEY&libraries=places&callback=initMap" async defer></script> 

Aber ich immer noch Fehler angezeigt: Nicht abgefangene Typeerror: kann nicht lesen Eigentum 'sphärische' undefinierter bei initMap

Was mache ich falsch? Muss ich eine benutzerdefinierte API aktivieren?

Antwort

6

Sie haben den Parameter 'libraries' zweimal in Ihrer src-URL.

entfernen die zweite: & Bibliotheken = Orte

... und halten die erste: & Bibliotheken = Geometrie legt

<script src="https://maps.googleapis.com/maps/api/js?libraries=geometry,places&key=MY_KEY&callback=initMap" async defer></script> 
+0

Ouch Ich bin Idiot ... danke! – general666

+1

Kein Problem. Manchmal brauchen Sie nur ein frisches Paar Augen. –

2

Es gibt ein Problem mit URL, Bibliotheken Parameterduplikate.

<script src="https://maps.googleapis.com/maps/api/js?libraries=geometry,places&key=MY_KEY&callback=initMap" async defer></script> 

Um sphärische Klasse verwenden Sie enthalten haben zu 'Geometrie' in Bibliotheken Liste anfordert - überprüfen documentation:

// This example requires the Geometry library. Include the libraries=geometry 
// parameter when you first load the API. For example: 
// <script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&libraries=geometry"> 
Verwandte Themen