webentwicklung-frage-antwort-db.com.de

google.maps.geometry.spherical Fehler

Ich habe einige Probleme mit der Geometrie bei Google Maps. Ich erhalte die folgende Fehlermeldung: "Konnte keine 'sphärische' Eigenschaft mit undefinierter oder Null-Referenz erhalten."

Dies ist ein Code von w3c mit einigen Ergänzungen von mir.

var x=new google.maps.LatLng(52.395715,4.888916);
var stavanger=new google.maps.LatLng(58.983991,5.734863);
var amsterdam=new google.maps.LatLng(52.395715,4.888916);
var london=new google.maps.LatLng(51.508742,-0.120850);
function initialize()
{
var mapProp = {
  center:x,
  zoom:4,
  mapTypeId:google.maps.MapTypeId.ROADMAP
};

var map=new google.maps.Map(document.getElementById("googleMap"),mapProp);
var myTrip=[stavanger,amsterdam,london];
var flightPath=new google.maps.Polyline({
    path:myTrip,
    strokeColor:"#0000FF",
    strokeOpacity:0.8,
    strokeWeight:2
    });
flightPath.setMap(map);

try{
    var markerpos = google.maps.geometry.spherical.interpolate(flightPath.getAt(0), flightPath.getAt(1), .5);
    // also tried //
    //var Spherical = google.maps.geometry.spherical;
    //var markerpos = Spherical.interpolate(flightPath.getAt(0), flightPath.getAt(1), .5);
    //var markerpos = google.maps.geometry.spherical.interpolate(amsterdam, london, .5);
}
catch(ex){alert(ex);}

var marker = new google.maps.Marker({position: markerpos,
    map: map,  clickable: false
});
}

Was stimmt nicht mit dem obigen Code?

20
Reven

Laden Sie die korrekte Bibliothek mit dem Parameter libraries=?

<script src="https://maps.googleapis.com/maps/api/js?v=3&sensor=false&libraries=geometry"></script>
68
Marcelo

Zuerst müssen Sie Bibliotheksmodule und dann das Auth-Schlüsselmodul importieren. Ich denke, das Problem liegt hier zum Zeitpunkt der Ausführung von Bibliotheksfunktionen vor. Der Import von Bibliotheksmodulen ist nicht abgeschlossen. Wenn Sie zuerst das Auth-Schlüsselmodul importieren Was passiert ist, ist sofort die Methode initialize () aufgerufen, wenn das Laden von Bibliotheksmodulen nicht abgeschlossen ist. Sie müssen also zuerst Bibliotheksmodule und dann das Authentifizierungsmodul importieren.

0
Tarak