需要使用下面的express应用设置,Express才能正确的处理模版文件。
views — 指定模版文件的目录,例如app.set(‘views’, ‘./views’)
view engine — 指定模版引擎,例如app.set(‘view engine’, ‘jade’)
首先要使用npm安装模版引擎jade。关于Jade,官网Jade Template Engine ,一个不错的教程Jade — 源于 Node.js 的 HTML 模板引擎
1 |
npm install jade |
例如Jade这种Express兼容的模版引擎,会导出名为 __express(filePath, options, callback)
的function,并可以通过res.render()来渲染模版代码。
一旦设定了视图模版引擎,你不需要显式地指定引擎或在应用程序加载模板引擎模块。Express会在内部自动加载它。例如:
1 |
app.set('view engine', 'jade'); |
在views目录下创建一个jade模版文件”index.jade”, 内容如下:
1 2 3 4 5 |
html head title!= title body h1!= message |
然后创建一个route来渲染”index.jade”文件。如果没有指定模版引擎,则需要指定view文件的扩展名。
1 2 3 4 5 6 7 8 9 10 11 |
var express = require('express'); var app = express(); app.set('views', './views') app.set('view engine', 'jade') app.get('/', function (req, res) { res.render('index', { title: 'Hey', message: 'Hello there!'}); }) app.listen(3000); |
使用node app.js
来启动应用,一旦有到’/’的请求时,”index.jade”会作为HTML来渲染。
参考:
Using Template Engines