假设我有一个名为layout.jade
的主模板文件和一组扩展此模板的文件 - home
,about
,products
等等。
在主模板中我放了这样的结构:
body
section.main-content
block content
然后页面:
extends ../layouts/default
block content
include partials/banner
include partials/why
因此,不同的页面将不同的内容相应地放入内容块中。我使用gulp-jade
呈现页面,最后我将所有页面都作为HTML。
我的问题是 - 我可以在子页面中添加一些变量,例如about
,以便它可以作为其父模板的body标记的类,例如<body class="about">
吗?
答案 0 :(得分:2)
这是我用于此类情况的模式。在主模板中,设置一些变量:
//layouts/default.jade
- var bodyClass;
block variables
html
head
body(class=bodyClass)
section.main-content
block content
然后在您的页面模板中建立bodyClass
。
//about.jade
extends ../layouts/default
block variables
- bodyClass = "about"
block content
h1 This is the About Page
这就是我为<head><title>
标记创建页面标题的方法。我也可以在layout.jade
文件中使用逻辑来提供默认值等。