2013-08-20 6 views
0

Je cherche à faire quelque chose de simple avec Nodejs et Async.AsyncJS avec une boucle for

J'ai un nombre de pages, disons 4 pour notre exemple. Et je veux faire une demande 4 fois et ensuite déclencher un rappel quand ils sont tous retournés.

async.eachSeries new Array(pages) 
    ,(i,next)-> 
     offset+=100; 
     next(); 
    ,(err)-> 
     console.log("All done!"); 

Existe-t-il une méthode async puis-je utiliser une boucle for? Ou dois-je faire une boucle et créer les fonctions en premier, puis passer en mode asynchrone?

Mise à jour: est-ce le meilleur moyen de le faire?

+0

que voulez-vous dire par quelle méthode? – cocco

+0

[async.times] (https://github.com/caolan/async#times) –

+0

@AndreasHultgren qui devrait être une réponse et non un commentaire car il répond pleinement à la question OP. –

Répondre

2
async.times(4, function(n, next){ 
    somethingAsync(n, next); 
}, 
function (err) { 
    // Here when all four calls are done 
}); 

Voir async.times.

+0

Parfait, merci! – wesbos