Express と Jade を使用するために、Node モジュールをインストールしておきます。
$ npm install express
$ npm install jade
Express では Node.js で使用可能なテンプレートエンジンをすべて利用することができます。
例えば、テンプレートエンジンとして Jade を使用するには、以下のように Application#set()
を使って変数設定しておく必要があります。
// view engine の指定。Jade テンプレートエンジンを使用する場合は 'jade'
app.set('view engine', 'jade');
// テンプレートファイル (*.jade) を格納するディレクトリの指定
app.set('views', path.join(__dirname, 'views'));
View ファイル(テンプレートファイル)を使って HTML を出力するには、Response#render()
メソッドを使用します(拡張子 .jade
は省略できます)。
app.get('/', function(req, res) {
// Render by using /views/index.jade
res.render('index');
});
Jade で使用する View ファイルは、以下のような感じでインデントをベースにして記述します。
html
head
title Hello
body
h1 Hello!
View ファイルを修正したときに、Web サーバを再起動する必要はありません。 Web ブラウザ側で再読み込みするだけで反映されます。
var express = require('express');
var app = express();
app.set('view engine', 'jade');
app.set('views', path.join(__dirname, 'views'));
// Define routes.
app.get('/', function(req, res) {
res.render('index');
});
// Start the server
app.listen(3000, function() {
console.log('Listening on port 3000');
});
$ node app.js
Listening on port 3000