我新来表达。现在我正在进行mongodb连接和CRUD活动。我在connection.js中创建了一个连接。我在app.js中获取数据库实例。我需要共享寄存器,登录和其他一些模块的相同数据库实例,而无需再次调用这些模块中的connection.js。或者我需要正确的答案来重新使用快递中的多个模块中的连接。
先谢谢,
答案 0 :(得分:0)
您可以像这样设置数据库模块:
// db.js
let _db;
module.exports = {
getDb,
initDb
};
function initDb(callback) {
//connect to db and set _db to the new connection.
}
function getDb() {
assert.ok(_db, "Db has not been initialized. Please called init first.");
return _db;
}
然后在您的应用初始化的某处,您可以执行以下操作:
// app.js
const dbmodule = require("./db.js");
initDb(function(err){
// more app init;
});
然后在你的其他模块中,比如login.js,执行:
// login.js
const dmModule = require("./db")
const db = dbModule.getDb() //at this point the db should have been initialized.