【发布时间】:2012-02-02 07:10:46
【问题描述】:
我正在使用 Node.js 和 Express,我想在每个页面的布局中传递一个局部变量,有什么方法可以做到这一点吗?我使用 Jade 作为我的模板引擎。
我想要这个的原因是因为我想在每个页面上显示用户的用户名(使用会话),除了每次都包含在本地对象中之外,还有什么方法可以做到这一点?
【问题讨论】:
我正在使用 Node.js 和 Express,我想在每个页面的布局中传递一个局部变量,有什么方法可以做到这一点吗?我使用 Jade 作为我的模板引擎。
我想要这个的原因是因为我想在每个页面上显示用户的用户名(使用会话),除了每次都包含在本地对象中之外,还有什么方法可以做到这一点?
【问题讨论】:
你可以通过定义一个动态视图助手来实现这一点,正如官方Express guide中指出的那样:
app.dynamicHelpers({
session: function(req, res){
return req.session;
}
});
然后在您的视图中,您可以简单地访问session 变量,例如 session.user 来显示用户。
【讨论】: