我目前正在编写一个node.js项目,我在其中定义并实例化了主ES6类中的rethinkdb变量。在多个类之间共享实例化变量的最佳方式?
我的问题是什么是在所有后续项目类中共享数据库变量的最佳方法,而无需重新实例化相同变量或创建另一个数据库连接?这样的“全局”变量。
像这样的唯一途径?无论如何将其定义为全球?
const db = require('rethinkdb');
db.connect({
host: config.db.host,
port: config.db.port,
authKey: config.db.authkey,
ssl: {
ca: content
}
}, function(err, conn) {
if(err) {
fail(err)
} else {
success(conn)
}
});
new ClassName(db);
编辑:
我也可以考虑做一个DB类在DB变量是单身?这是最好的方法吗?
把它放在模块中? – Bergi
使用模块来存储变量 – commonSenseCode
当目的是跨模块共享连接时,这个问题和答案可能有所帮助:http://stackoverflow.com/questions/30356148/how-can-i-use-a-single- mssql-connection-pool-across-several-routes-in-an-express –