Comment ira-t-je continuer à courir Axios dans A pour une boucle, chacune avec une fonction correspondante .then()
. Ensuite, après la fin de la boucle, courez une autre fonction.
Exemple:
const array = ['asdf', 'foo', 'bar'];
let users = [];
for (i = 0; i < array.length; i++) {
axios.get('/user/' + array[i].id).then(response => {
// do something with response
users.Push(response);
});
}
console.log(users);
Vous devriez collecter toutes les promesses à l'intérieur d'une matrice et utilisez la promesse.Tous de la manière suivante -
const array = ['asdf', 'foo', 'bar'];
let promises = [];
for (i = 0; i < array.length; i++) {
promises.Push(axios.get('/user/' + array[i].id))
}
Promise.all(promises)
.then(responses => console.log(responses));
Si vous utilisez une version plus récente de JavaScript avec async/await
Support, vous pouvez procéder comme suit:
const array = ['asdf', 'foo', 'bar'];
let users = [];
for (const id in array) {
const response = await axios('/user/' + id);
users.Push(response);
}
console.log(users);