MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Warum teilt mir Express mit, dass meine Standardansichts-Engine nicht definiert ist?

Die Fehlerquelle beschreibt die Anforderungen:

if (!ext && !this.defaultEngine) throw new Error('No default engine was specified and no extension was provided.');

Express erwartet, dass Sie entweder die Ansicht mit ihrer Erweiterung angeben:

res.render('index.html');

Oder geben Sie eine Standardansichts-Engine an und benennen Sie Ihre Ansichten danach:

app.set('view engine', 'ejs');

// `res.render('index')` renders `index.ejs`

Bezüglich deiner Bearbeitung:

Das Problem liegt in dieser Zeile:

app.engine('.html', require('ejs').renderFile());

Wie die Dokumentation zeigt , app.engine() erwartet eine function Hinweis. Sie können dies tun, indem Sie einfach () entfernen dieser Anruf renderFile :

app.engine('.html', require('ejs').renderFile);