将节点env传递给Express中的layout.jade,而不显式定义路由

Mat*_*her 1 javascript node.js express pug

所以,我将参数传递给Jade文件 - 馅饼:

app.use('/myroute', function (req, res) {
  res.render('myview', {somevar: 'Testing!'});
});
Run Code Online (Sandbox Code Playgroud)

但是 - 我有我的layout.jade文件,由Express隐式读取和呈现,没有路由视图绑定的实际定义,我正在尝试找出如何将变量传递到该模板.

有任何想法吗?干杯!

Ps-这样我就可以将节点的开发/生产变量传递给每个页面上添加的一些前端javascript.

Mat*_*her 9

啊,我找到了答案.将它设置为express中的局部变量,如下所述:Express.js查看"全局"

所以,在app.js中我包含app.locals.env = app.settings.env;然后在我的layout.jade中添加了我的javascript并且只是#{env}在脚本中使用来获取环境值.


Ant*_*y C 5

您还可以#{settings.env}在jade模板中使用,从中获取值app.locals.settings.env