Используя mongoskin, я могу сделать такой запрос, который вернет курсор:
myCollection.find({}, function(err, resultCursor) {
resultCursor.each(function(err, result) {
}
}
Тем не менее, я хотел бы назвать некоторые функции асинхронизации для каждого документа и только перейти к следующему элементу курсора после того, как он перезвонил (аналогично структуре eachSeries в модуле async.js). Например:
myCollection.find({}, function(err, resultCursor) {
resultCursor.each(function(err, result) {
externalAsyncFunction(result, function(err) {
//externalAsyncFunction completed - now want to move to next doc
});
}
}
Как я могу это сделать?
Спасибо
UPDATE:
Я не хочу использовать toArray()
, поскольку это большая пакетная операция, и результаты могут не соответствовать памяти за один раз.