sql >> Database >  >> NoSQL >> MongoDB

TypeError:object is geen functie bij het gebruik van MongoDB met Node.js

Het laatste argument van collection.aggregate() moet een callback zijn. Het mongodb-stuurprogramma verwacht een functie, maar uw laatste argument is een object. Daarom krijg je die foutmelding. Hier is de herziene code met de callback:

var MongoClient = require('mongodb').MongoClient;
var server = require('mongodb').Server;

var mongoclient = new MongoClient(new server("localhost", 27017));

mongoclient.connect("mongodb://localhost:27017/", function(err, db) {
  if (err) throw err;

  var db = mongoclient.db('school');

  cursor = db.collection('students').aggregate(
    [
        {$match: {"scores.type": "homework"}},
        {$unwind: "$scores"},
        {
            $group: {
                _id: '$name',
                'minimum': {$min: "$scores.score"}
            }
        }
    ], function(err, result) {   // callback
        console.dir(result);
        db.close();
    }
  );
});



  1. MongoDB Java-stuurprogramma:autoConnectRetry

  2. Eenvoudig gebruik van EM::Synchrony#sync veroorzaakt 'root fiber' FiberError -- mijn fout?

  3. Een bestaande MongoDB Docker Container herstarten met een nieuwe vlag voor daemon

  4. Kan Passport.js gewoon niet laten werken