app.locals
オブジェクトを使ってテンプレート内に好きなオブジェクトを供給することができます。テンプレートでヘルパー関数を使いたい時に便利です。
サンプルコード
次のコードはテンプレート内で moment.js
が使えるように moment
オブジェクトを app.locals
にセットする例です。
app.js
const express = require('express');
const app = express();
app.set('view engine', 'pug');
app.locals.moment = require('moment');
app.get('/', (req, res) => {
res.render('index');
});
app.listen('3000', () => {
console.log('Application started');
});
views/index.pug
html
body
span #{moment().format()}
動作確認
$ node app.js
$ curl http://localhost:3000
<html><body><span>2019-06-25T20:31:02+09:00</span></body></html>