Je travaille sur une pièce où je dois obtenir des données json à partir d'une API pour différentes villes et construire des DOM.Tableau de promesses
Jusqu'ici, j'ai été capable de faire les deux. Le seul problème est que le temps de réponse de l'API pour les différentes villes est différent. Donc, quand je construis le DOM, ils ne sont pas dans le même ordre que j'appelle la fonction. D'après ce dont je me souviens, je dois utiliser la promesse pour obtenir cet ordre. Mes questions sont maintenant:
- Comment puis-je utiliser une série de promesses (puisque mon entrée variera).
- Comment puis-je exécuter une série de promesses?
Mon code de travail à ce jour:
var base_path = "https://www.example.com/";
var cities = [
"San_Francisco",
"Miami",
"New_Orleans",
"Chicago",
"New_York_City"
];
function getData(city){
var path = base_path+city+".json";
$.getJSON(path,function(data) {
// build DOM
});
}
for(var i=0;i<cities.length;i++) {
getData(cities[i]);
}
Merci!
Veuillez noter - "Si l'une des promesses transmises est rejetée, Promise.all rejette de manière asynchrone la valeur de la promesse rejetée, que les autres promesses aient été résolues ou non.". – dimacpp