需要在應用中進行如下設置才能讓 Express 渲染模板文件:
views, 放模板文件的目錄,比如: app.set('views', './views')
view engine, 模板引擎,比如: app.set('view engine', 'jade')
然後安裝相應的模板引擎 npm 軟件包。
$ npm install jade --save
和 Express 兼容的模板引擎,比如 Jade,通過 res.render() 調用其導出方法 __express(filePath, options, callback) 渲染模板。
有一些模板引擎不遵循這種約定,Consolidate.js 能將 Node 中所有流行的模板引擎映射為這種約定,這樣就可以和 Express 無縫銜接。
一旦 view engine 設置成功,就不需要顯式指定引擎,或者在應用中加載模板引擎模塊,Express 已經在內部加載,如下所示。
app.set('view engine', 'jade');
在 views 目錄下生成名為 index.jade 的 Jade 模板文件,內容如下:
html head title!= title body h1!= message
然後創建一個路由渲染 index.jade 文件。如果沒有設置 view engine,您需要指明視圖文件的後綴,否則就會遺漏它。
app.get('/', function (req, res) { res.render('index', { title: 'Hey', message: 'Hello there!'}); });
此時向主頁發送請求,“index.jade” 會被渲染為 HTML。