MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Itérer sur un curseur mongodb en série (attendre les rappels avant de passer au document suivant)

Si vous ne souhaitez pas charger tous les résultats en mémoire à l'aide de toArray, vous pouvez itérer à l'aide du curseur avec quelque chose comme ce qui suit.

myCollection.find({}, function(err, resultCursor) {
  function processItem(err, item) {
    if(item === null) {
      return; // All done!
    }

    externalAsyncFunction(item, function(err) {
      resultCursor.nextObject(processItem);
    });

  }

  resultCursor.nextObject(processItem);
}