EJS不呈现输出



我正在尝试使用EJS,但每当res.render被调用时,它只是挂在那里没有响应。

这是我的app.js文件

var express = require('express');
var bodyParser = require('body-parser')
var mongoose = require('mongoose');
var app = express();
var router = require('./router/index')(app);
app.use(bodyParser.json())
app.set('view engine', 'ejs');
// Internal Server error
app.use(function(err, req, res, next) {
    res.status(err.status || 500);
});
module.exports = app;
app.listen(8888);

在我的路由文件

module.exports = function (app) {
  app.use('/', require('./routes/Website'));
  app.use('/api/users', require('./routes/UsersRoute'));
  app.use('/api/keys', require('./routes/KeysRoute'));
};

在网站文件

var express = require('express');
var router = express.Router();
// Get all Users data
router.get('/', function (req, res) {
  res.render('index', { title: 'The index page!' })
});

我有一个index.eps文件在views文件夹和layout.eps在布局文件夹。我做错了什么?

内部服务器错误中间件应该有条件吗??在我看来,每次调用路由时,它都会尝试从中间件发送响应。

尝试在中间件中注释出res,并尝试调用next();

删除

解决问题
// Internal Server error
app.use(function(err, req, res, next) {
    res.status(err.status || 500);
});

EJS似乎在根目录下查找views文件夹而不是.js文件的目录

相关内容

  • 没有找到相关文章

最新更新