Jestem nowy w Mongo, a teraz utonęłam w całej masiedokumentację. Chcę tylko użyć kursora mangusty do pracy asynchronicznej z operacją danych wewnątrz kursora. Powinien poczekać, aby odtworzyć następną iterację, aż operacja zostanie zakończona. Przeczytałem w, że możemy to zrobić
QueryCursor # eachAsync (fn, [options], [options.parallel], [callback])
Jeśli fn zwróci obietnicę, zaczeka na jej rozwiązanie
Ponieważ jestem nowy w Mongo, nie wiem, jak stworzyć obietnicę i rozwiązać ją później.
var cursor = Users.find({ "is_verified" : false }).cursor();
cursor.eachAsync(function (doc) {
//create promise here
async.series({
one: function(callback){
callback(null,1);
},
two: function(callback){
callback(null,2);
},
three: function(callback){
callback(null,3);
},
four: function(callback){
//resolve promise here
if() callback(null,4)
},
},function(err,result){})
}).then(()=>console.log("FINISHED"));
Odpowiedzi:
0 dla odpowiedzi № 1Wywołałbym twoją funkcję w tablicy takiej jak ta: [To jest pseudo-kod pół]
for(parameter in parameters) {
users.find({"parameter":parameter}, function( err, data) {
if (err) return handleError(err);
functionToFeedTemplate(data);
functionToSendMail(data);
}
}