Migration: Maps Module in google.load

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Il 13 ottobre 2021 disattiveremo il servizio che fornisce il modulo "Maps" per google.load. Ciò significa che dopo il 13 ottobre 2021, se tenti di utilizzare il modulo "Maps" in google.load, verrà visualizzato un errore (il modulo "Mappe" non è supportato) e la mappa non verrà caricata. Per evitare possibili rotture, devi passare a una delle alternative.

Cosa devo fare?

Rimuovi prima il tag <script> che carica il caricatore google.load, quindi rimuovi le chiamate a google.load. Se utilizzi Google Caricatore per altre operazioni, puoi lasciare il tag <script> del caricatore in posizione.

Successivamente, implementa un nuovo modo per caricare l'API Maps JavaScript (seleziona una delle seguenti opzioni):

Esempio attuale che utilizza il caricatore Google

L'esempio seguente mostra come viene attualmente utilizzato il caricatore Google per caricare l'API Maps JavaScript (ci sono due blocchi <script>):

Prima

<script type='text/javascript' src='https://www.google.com/jsapi'></script>
<script type='text/javascript'>
google.load("maps", "3.exp", {
    "callback": initMap,
    "key": "YOUR_KEY",
    "libraries": "places,visualization"
});
function initMap() {
  // Google Maps JS API is loaded and available
}
</script>

Quando viene utilizzato questo approccio, l'API Maps JavaScript viene caricata contemporaneamente alla pagina. Per implementare il caricamento in linea, sostituisci prima il tag <script> che carica www.google.com/jsapi ("before") con il tag <script> mostrato nell'esempio seguente:

<script async src="https://maps.googleapis.com/maps/api/js?libraries=places,visualization&key=YOUR_API_KEY&v=weekly&callback=initMap">
</script>

Poi, nel codice JavaScript, rimuovi la chiamata funzione google.load, poiché non è più necessaria. L'esempio seguente mostra una funzione initMap() vuota, chiamata quando la libreria di Maps è stata caricata correttamente:

<script type='text/javascript'>
function initMap() {
  // Google Maps JS API is loaded and available
}
</script>

Consulta la documentazione

Caricamento dinamico da un altro file JavaScript

Il caricamento dinamico ti consente di controllare quando viene caricata l'API Maps JavaScript. Ad esempio, puoi attendere che venga caricata l'API Maps JavaScript finché l'utente non fa clic su un pulsante o esegue un'altra azione. Per implementare il caricamento dinamico, per prima cosa sostituisci il tag <script> che carica www.google.com/jsapi ("before") con il codice per aggiungere il tag <script> a livello di programmazione, come mostrato nell'esempio seguente:

var script = document.createElement('script');
script.src =
'https://maps.googleapis.com/maps/api/js?libraries=places,visualization&key=YOUR_API_KEY&v=weekly&callback=initMap';
script.async=true;

Quindi collega la funzione di callback all'oggetto finestra in questo modo:

window.initMap = function() {
  // Google Maps JS API is loaded and available
};

Infine, aggiungi il tag <script> all'intestazione della pagina nel seguente modo:

document.head.appendChild(script);

Consulta la documentazione