sql >> Database teknologi >  >> NoSQL >> MongoDB

node.js mongodb - collection.find().toArray(callback) - callback bliver ikke kaldt

Du bruger ikke open tilbagekald, så hvis du forsøger at lave findall anmodning lige efter oprettelse af dao så er den ikke klar.

Hvis din kode er sådan, vil den ikke virke.

var dao = new DataAccessObject("my_dbase", "localhost", 27017);

dao.findAll("my_collection",function() {console.log(arguments);});

Jeg har testet det, og det finder ikke poster, og det giver heller ingen fejl. Jeg synes, det burde give en fejl.

Men hvis du ændrer det, så du giver et tilbagekald til konstruktøren, så burde det virke.

var DataAccessObject = function(db_name, host, port, callback){
    this.db = new Db(db_name, new Server(host, port, {auto_reconnect: true}, {}));
    this.db.open(callback);
}

Og lav din kode sådan her.

var dao = new DataAccessObject("my_dbase", "localhost", 27017, function() {
    dao.findAll("my_collection",function() {console.log(arguments);});
});



  1. Hvordan optimerer man MongoDB-forespørgsel med både $gt og $lte?

  2. Findes der en MongoDB maksimal bson-størrelse?

  3. Beskæftiger sig med mongodb unikke, sparsomme, sammensatte indekser

  4. hvordan man trin for trin fejlretter i mongodbs kort/reducer