在Jade文件中连接一个variables+string

我正在传递一个会话variables从我的mongodb会话存储在Express for Node.js Web应用程序中是这样的:

exports.dashboard = function(req, res){ res.render('dashboard', {pref: req.session.layoutpref}); } 

然后,在我的Jade文件中,我试图把pref的值赋给这个css链接,但是我得到一个语法错误:

 head title #{title} link(rel='stylesheet', href='/stylesheets/' + #{pref} + '.css') 

我几乎可以肯定,问题在于我的pref连接到要使用的css文件的位置。 任何想法如何解决这一问题?

如果要在元素的内容中插入variables,请使用#{}表示法。 你可以直接使用variables名称,如果你想在属性中使用它们。

 link(rel='stylesheet', href='/stylesheets/' + pref + '.css') 

当量:

 link(rel='stylesheet', href='/stylesheets/' + locals.pref + '.css') 

何时使用#{}

 a(href='/stylesheets/' + locals.pref + '.css') View the stylesheet at #{pref} 

Jade文件在Node.js env中编译。

Node.js(从v4.0.0开始)支持模板文字 ,所以

 link(rel='stylesheet', href=`/stylesheets/${pref}.css`) 

当量:

 link(rel='stylesheet', href='/stylesheets/' + pref + '.css')