我的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
在第一次请求时不会呈现,只有从第二次请求开始,我才能获得 name 属性。
为什么会出现这些问题?我错过了一些非常微不足道的东西吗?