Nous incluons l'API Google Maps V3 dans nos systèmes internes avec le code ci-dessous:
script src = "https://maps.googleapis.com/maps/api/js?key=&libraries=places,geometry"
Cela fonctionnait jusqu'à il y a quelques heures (9h du matin) dans la console tout ce qui est retourné est:
Uncaught TypeError: b.has n'est pas une fonction de https://maps.googleapis.com/maps-api-v3/api/js/35/3/map.js
Est-ce que quelqu'un d'autre fait face au même problème?
Comment puis-je résoudre ce problème lorsque le code est inclus à partir des serveurs de Google?
Avait le même problème, en utilisant une ancienne version a résolu pour le moment:
https://maps.googleapis.com/maps/api/js?v=quarterly&key=API_KEY
Correction longue durée - Vous avez probablement remplacé la window.Map native, voir https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Map
Nous avons le même problème ici. Nous avions un lien vers la dernière version: https://maps.googleapis.com/maps/api/js?key= ...
Si nous forçons la version à 3.34, le problème est résolu: https://maps.googleapis.com/maps/api/js?v=3.34&key=
La version 3.35 ne fonctionne pas. Google a remplacé une fonction utilisée avec des cartes (hashmaps, et non des cartes graphiques) permettant de rechercher une clé . HasOwnProperty (b, c) -> b.has (c)
Le problème est que "b" n'a pas la fonction "a".
Je n'ai pas beaucoup plus d'informations à ce stade. Nous poursuivons l'enquête.
Bonne chance à tous.
Cordialement Vincent
Edit: .__ OK, maintenant je comprends ce qui s’est passé. Quelque part dans notre carte, nous redéfinissons le prototype "Carte". Ce prototype ne contient pas non plus la méthode "has" et peut-être "set" (c'était le cas pour nous) . Vous devez rechercher quelque chose comme "Map.prototype". dans les fichiers jour JS. Cela vous indiquera où vous devez corriger votre JS . Si vous ne pouvez pas supprimer ce prototype, vous devrez redéfinir les méthodes manquantes . Par exemple, nous avons eu le prototype suivant:
function Map(){
this.obj = {};
this.count = 0;
}
Nous avons dû compléter ce prototype avec les méthodes suivantes:
Map.prototype.has=function(key){
return this.obj[key] !== undefined;
}
Map.prototype.set = function(key, value){
var oldValue = this.obj[key];
if(oldValue == undefined){
this.count++;
}
this.obj[key] = value;
return oldValue;
}
Avec cette correction, la version 3.35 de GoogleMaps JS fonctionne.
J'espère que ça aide.
Cordialement, Vincent
Chose similaire. Code mature statique dans l'application à fort trafic. Travailler depuis plus de 8 ans. Jusqu'à ce matin. En fin de compte, nous utilisions un ID réservé revendiqué par l'API GMap pour l'une de nos instances d'objet internes ("Map"). Je ne sais pas pourquoi il a décidé aujourd'hui de souffler. Nous étions en liaison dans l'ancienne version (3.29) de l'API. Quelque chose a clairement changé du côté de Google.