我想将返回的函数值传递给ejs引擎模板,但我却得到了“未定义”。
我有一个带有几个功能的文件-util.js,在那个文件中,我有:
var models = require('../../models');
var UserModel = models.user;
var FotoModel = models.photographer;
function whoAmI(req, res){
FotoModel.findOne({
where: {
IdUser: req.user.IdUser
}
}).then(function (foto) {
if(!foto){
return "Client"
}else{
return "Photographer"
}
});
}
module.exports ={
whoAmI: whoAmI,
}
我有一个名为controller.js的文件:
var util = require('../models/util.js');
var exports = module.exports = {}
exports.profile = function(req, res){
res.render("profile", {
name: req.user.Name,
lastName: req.user.LastName,
login: req.user.Login,
email: req.user.Email,
ifClient : util.whoAmI(req, res)
});
}
在ejs中渲染视图时,我想发送给变量“ ifClient”,并从函数“ whoAmI”返回值。当我这样做时,我会变得“未定义”。我该怎么办?