MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Serielles Iterieren über einen Mongodb-Cursor (Warten auf Rückrufe, bevor zum nächsten Dokument gewechselt wird)

Wenn Sie nicht alle Ergebnisse mit toArray in den Speicher laden möchten, können Sie mit dem Cursor etwa wie folgt iterieren.

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);
}