आप इसे कॉलबैक के रूप में संभालने के लिए ईवेंट का उपयोग कर सकते हैं।
और हो सकता है कि आपके पास आपका वैश्विक चर हो जो यह पहचान ले कि यह कनेक्ट नहीं है।
आपके पास अलग db.js
हो सकता है फ़ाइल, जो मॉड्यूल के रूप में व्यवहार करेगी। और आप इससे संग्रह प्राप्त करने के लिए कार्य कर सकते हैं।
var mongodb = require('mongodb');
var client;
var collections = { };
new mongodb.Db( ... ).open((function (err, c) {
if (!err) {
client = c;
client.on('close', function() {
client = null; // clear client
collections = { }; // clear old collections
// connection closed
});
} else {
// error connecting
}
});
// get collection
exports.get = function(name, callback) {
if (client) {
if (!collections[name]) {
collections[name] = new mongodb.Collection(client, name);
}
callback(null, collections[name]);
} else {
// can perform reconnecting and then get collection and call callback
callback(new Error('not connected'));
}
}
तो इसका इस्तेमाल करने के लिए:
var db = require('./db.js');
db.get('users', function(err, collection) {
if (!err) {
collection.find({ ...
} else {
console.log(err);
}
});
क्षमा करें, आपने अभी-अभी देखा है कि आप Mongoose का उपयोग कर रहे हैं, जो थोड़ा अलग हो सकता है।