我正在开发一个具有3种不同类型的Web应用程序。
学生老师和管理员。
根据记录的acctype,我不想加载不同的菜单。
我有一个分配给会话变量的acctype;
#{session.acctype}
所以我曾经像这样处理它;
script(src='js/sidebar#{session.acctype}.js')
但我想摆脱上面加载的js文件中使用的document.write。 所以现在我在里面的玉文件中有菜单。
问题来了,我不知道如何使用session变量来加载jade文件!
我没有成功地试过这个;
include sidebar#{session.acctype}.jade
那么,有什么方法可以解决这个问题吗?
答案 0 :(得分:3)
为了让您的模板能够访问您的会话变量,您需要将它们添加到res.session.locals
。一个简单的方法是添加
app.use(function(req,res,next){
res.locals.session = req.session;
next();
});
在致电app.use(app.router)
之前,请先找到您的申请表。使用中间件调用此技术。