1
私はNode.jsアプリケーションを持っています。私はしばらくの間、このアプリケーションを構築してきましたが、現在はビューエンジンとしてSwigを使用しています。私は次のコードを使用してビューエンジンとして設定しています:Node.js - SwigからExpressのNunjucksへの移行
// Use swig.
const swig = require('swig');
app.engine('html', swig.renderFile);
if (app.get('env') === 'development') {
swig.setDefaults({ cache: false });
}
app.set('views', path.join(__dirname, '../views'));
app.set('view engine', 'html');
これはうまくいきました。しかし、私はいくつかのダウンタイムを持っているので、今はNunjucksに移行するのに良い時期だと思っていました。そこで、私は上記を次のように置き換えました:
// Use nunjucks.
const nunjucks = require('nunjucks');
app.engine('html', nunjucks.renderFile);
if (app.get('env') === 'development') {
nunjucks.setDefaults({ cache: false });
}
app.set('views', path.join(__dirname, '../views'));
app.set('view engine', 'html');
私のサイトを起動すると、エラーになります。エラーは次のとおりです。
throw new Error('callback function required');
^
Error: callback function required
at EventEmitter.engine (C:\MyProject\node_modules\express\lib\application.js:294:11)
at EventEmitter.module.exports (C:\MyProject\src\index.js:16:9)
at EventEmitter.configure
...
私は間違っていますか?どのコールバックが求められていますか?私は、Nunjucksエンジンを使い始めると、構文上の誤りが生じることを知っています。しかし、私はNunjucksエンジンをロードする方法を理解しようとしています。