Je me débats avec une boucle asynchrone, voici ce que j'ai essayé: Comment puis-je "attendre qu'il soit terminé" de sorte que le tableau ne soit pas vide?
Merci beaucoup! P> p>
3 Réponses :
Votre premier problème: le tableau de sortie est vide car vous l'utilisez avant que em> aucune des promesses est exécutée. Vous devez Le deuxième problème: les promesses peuvent exécuter et donc La solution est (1) le Plus d'informations: p> attendre code> toutes les promesses avant d'utiliser le tableau.
pousser code> éléments de l'ordre aléatoire (pseudo-). Votre matrice de sortie peut être mélangée. P>
attendre code> Toutes les promesses et (2) Gardez l'ordre d'entre eux (en utilisant
array.pototype.map code>): p>
promettes.All code>
est async code> fonction qui prend des promesses et renvoie des résultats de leurs résultats. P>
array.pototype.map code> exécute la fonction pour chaque élément du tableau. p>
Array .pototype.map code>
p>
li>
ul> p>
Vous pouvez utiliser la carte et la promesse.Tous pour votre scénario
Attendez d'abord l'achèvement de l'extraction de l'ASYNC de toutes les options à l'aide de mapper code> et
promess.All code>, puis planez ces identifiants dans une liste d'éléments, quelque chose comme Ceci:
Utilisez
.map code> ou
.Reduce code> et
promettez.Tous code> à la place.
.foreseach code> n'attendra pas.
Vous voudrez peut-être vérifier ceci: Stackoverflow.com / Questions / 42173350 / ...
Votre code semble être faux. Pourquoi est-ce qu'il utilise
brut ["id"] code>? Voulez-vous dire
ollement.id code>?