包含mongoose查询的函数
module.exports.getSiteState = function(callback){
var data;
Count.find(function(err,result){
if (err) {
return callback(err);
}else{
data = result[0].count;
callback(err,data);
}
});
}
调用模型的函数,当我使用return而不是callback时,它会在查询之前返回。
var Data = require('../models/users');
router.get('/adminIndex', function(req,res){
//console.log(User.getSiteState());
var count = User.getSiteState();
console.log("1 "+count);
res.render('admin/adminIndex',{layout: 'adminLayout'});
})
答案 0 :(得分:1)
getSiteState
函数不会返回值。它是异步的,并期望您将回调函数作为参数传递。然后可以使用此回调来获得结果:
var Data = require('../models/users');
router.get('/adminIndex', function(req,res) {
User.getSiteState(function(err, count) {
console.log("1 "+count);
res.render('admin/adminIndex',{layout: 'adminLayout'});
});
});