J'ai la méthode asynchrone géocodage suivante ci-dessous, il fonctionne comme prévu de prendre dans une adresse à partir d'un tableau d'objets personnalisés je, mon problème est la cartographie du résultat à l'objet [i] qui a tiré cette méthode, voir les résultats me donnent seulement de retour une adresse formatée qui diffère de celui que j'inputed, « Google ajoute des codes de la région, les changements à la rue St etc. » quand je reçois ces résultats en arrière, je n'ai aucun moyen de correspondre à la nouvelle Lat et Lng coordonnées j'ai obtenu à chaque objet en raison de la nature asynchrone de cette méthode et les résultats ne sont pas revenus dans l'ordre, Toute idée est ce que je pouvais faire ici?
Merci.
Edit: mes pensées créeraient un moyen d'obtenir les résultats dans l'ordre, changer cela synchrone, je sais pas idéal et je ne peux pas trouver des exemples.
fonction iterateAndAddress (objArray) {
for(var i=0; i< objArray.length; i++) {
var address = objArray[i].BillingStreet +' '+objArray[i].BillingCity+' '+objArray[i].BillingCountry;
var geocoder = new google.maps.Geocoder();
console.log('Address = '+address);
if(geocoder) {
geocoder.geocode( { 'address': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
//console.log(results);
var lat = results[0].geometry.location.lat();
var lon = results[0].geometry.location.lng();
console.log('Address : '+results[0].formatted_address);
}else if(status == 'OVER_QUERY_LIMIT') {
}
else{
}
});
}
}
}













