私は最近node.js+Expressを学び始め、それが非常に興味深いことに気づきました。
ルーティングでの変数の共有に関する多くの投稿を読みましたが、それらの多くはmodule.exportsとexportsを使用していました。
ローカル変数を設定する関数を作ることにしました
ルート/test.js
var db;
exports.setup = function(_db){
db = _db;
};
exports.doit = function(req, res){
db.get("testToken", function(err, result) {
console.log("err: " + err);
console.log("result: " + result);
res.send("respond with a resource");
});
};
app.js
var redis = require("redis");
var db = redis.createClient();
var test = require("./routes/test.js");
test.setup(db);
// configuration...
app.get('/', test.doit);
このようなことをしても大丈夫ですか?
私はdb接続を2回以上行わないようにしたいので、変数を共有することが私が考えることができる唯一の方法でした...
何か提案はありますか?
ありがとうございました!!