能否在我的布局模板中设置基于页面路径的jade条件语句?是否有一个页面路径变量?我想做这样的事情:
if page = "/about"
link(rel='stylesheet', href='css/about')
else
link(rel='stylesheet', href='css/main')
这是布局模板的一部分。我应该在哪里和如何定义变量来驱动它?
能否在我的布局模板中设置基于页面路径的jade条件语句?是否有一个页面路径变量?我想做这样的事情:
if page = "/about"
link(rel='stylesheet', href='css/about')
else
link(rel='stylesheet', href='css/main')
这是布局模板的一部分。我应该在哪里和如何定义变量来驱动它?
是的,这是可能的:
- var page = window.location.pathname
if page === "/about"
link(rel='stylesheet', href='css/about.css')
else
link(rel='stylesheet', href='css/main.css')
request
对象的path
属性返回URL的路径部分。res.locals.path = req.path;
res.render('about');
if path === "/about/"
link(rel='stylesheet', href='css/about.css')
else
link(rel='stylesheet', href='css/main.css')
取决于你的设置
在Express中:
res.locals.cssPath = 'css/about.css';
res.render('about');
Jade: 不确定这里的语法,因为我不使用jade,但你可以访问locals。
link(rel='stylesheet', href=cssPath)