sql >> Database >  >> NoSQL >> MongoDB

Hoe een mongo-verbinding met beloften opnieuw te gebruiken?

Nee, dat kan niet als je niet weet of de database al is aangesloten of niet. Als u eerst verbinding moet maken, en dat is asynchroon, dan this.db moet een belofte opleveren, en je moet then . gebruiken .

Merk op dat je met Bluebird die code een beetje kunt inkorten, en die uitgebreide .then() vermijden terugbellen met behulp van de .call() methode :

Job.prototype.getDb = function() {
  if (!this.db)
    this.db = Mongo.connectAsync(this.options.connection);
  return this.db;
};
Job.prototype.test = function() {
  return this.getDb().call('collection', 'abc').call('findAsync');
};



  1. Node.js, Mongo gegevens zoeken en retourneren

  2. Is het ok om de mongo ObjectId in een string te veranderen en deze voor URL's te gebruiken?

  3. Mongo-uitzondering

  4. Mongodb - onbekende operator op het hoogste niveau:$elemMatch