无法在视图目录中查找视图 "index"

Failed to lookup view "index" in views directory

我正在努力学习node.js。

我有以下代码。

var express = require('express');
var app = express();

var port = process.env.PORT || 5000;

app.use(express.static('public'));
app.use(express.static('src/views'));

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

app.get('/', function(req, res) {
    res.render('index', { title: 'Hello from render', nav: ['Books', 'Author'] });
});

Failed to lookup view "index" in views directory I have the file named index.ejs. How can I get rid of this error?

试试

app.set('views', __dirname + '/views');

我就是这样解决的。

app.set('views', './src/views');
app.set('view engine', 'ejs');

我也遇到了同样的问题。我已将索引文件保存为 .html 文件。不过应该是index.ejs。然后它起作用了。也检查一下

对我来说这是一个老生常谈的问题:当我命名我的 'views' 文件夹时,我不小心在名称前输入了一个白色 space,所以名称是 'veiws',因此,ejs 不能找不到 'views' 文件夹。

我通过在我的之前写下一行来修复这个错误 app.set('viewengine' , 'ejs')

    app.set('views',path.join(__dirname,'views'));

使用路径更方便,使用前注意需要路径

我遇到了同样的问题,然后我将索引文件保存在 views 文件夹中。现在问题消失了。还要在您的文件中添加这行代码 app.set('views', path.join(__dirname, '/views'))