无法在views目录中查找视图“index”

时间:2016-04-13 20:22:12

标签: node.js express ejs

我正在尝试学习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'] });
});
  

无法在views目录中查找视图“index”   我有一个名为index.ejs的文件。我怎样才能摆脱这个错误?

5 个答案:

答案 0 :(得分:3)

尝试

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

答案 1 :(得分:3)

这是我修复它的方式。

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

答案 2 :(得分:1)

我也有同样的问题。我已将索引文件保存为.html文件。但它应该是index.ejs。然后它奏效了。检查一下

答案 3 :(得分:0)

对我来说,这是一个普遍的问题:当我命名“ views”文件夹时,偶然在名称之前输入了一个空格,因此名称为“ veiws”,因此ejs找不到“ views”文件夹

答案 4 :(得分:0)

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

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

使用path更方便,使用前还要注意require path