私のjsは次のとおりです。
/*
* GET home page.
*/
var MongoClient = require('mongodb');
exports.index = function(req, res){
var studentObj = {};
MongoClient.connect("mongodb://localhost:27017/MY_DB_TEST", function(err, db) {
if(!err) {
console.log("We are connected");
var collection = db.collection('test');
var stream = collection.find().stream();
stream.on("data", function(item){
studentObj = item;
});
}
});
res.render('index', { title: 'Express', obj: studentObj });
};
このページをjadeでレンダリングしようとしました。そのための私の構文は、
h1 Name: #{obj.name}
私のJSON:(mongodbから取得)
{
name: "Ron",
age: 24
}
これは機能しません。studentObj をグローバル変数として保持している場合、つまりrequire
ステートメントの後にのみ機能します。
また、obj.name
最初のリクエストではレンダリングされず、2 回目以降のリクエストでのみ name プロパティを取得します。
なぜこれらの問題が発生するのですか? 私は非常に些細なことを見逃していますか?