需要在應用程式中進行以下設定才能讓 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。