JSFiddle - React, Tailwind, and code Playground
HTML
<title>
MondoDb in nodeJs implementation with promise and callback
</title>
JavaScript
'use strict';
var MongoClient = require('mongodb').MongoClient;
var coll='dbName';
var dbName='mongodb://localhost:27017/' + coll;
var connectingDb; //promise
init();
module.exports = {
connectingDb: connectingDb,
getFromMongo: getFromMongo
};
function init() {
console.log('================== initializing DB ========================');
connectingDb = new Promise((resolve, reject) =>{
console.log('using: '+dbName);
MongoClient.connect(
dbName,
{
db: { bufferMaxEntries: 0 }
},
function(err, db) {
if(err){
console.error('Failed to connect to mongo on startup', err);
reject(err);
}
else {
console.log("Connected correctly to mongo db server.");
resolve(db);
}
}
);
});
}
function getFromMongo(cb) {
connectingDb.then(function(db) {
db.collection(coll).find().toArray(function (err,result){
cb(result);
});
});
}