nodejs表示错误:无法在视图目录中查找视图“/ pages / message”

这很奇怪,因为它曾经多次工作,但现在当我尝试使用res.render发送一个HTML页面到客户端,我只是从标题中得到错误。 该html文件是在视图文件夹中安然无恙,那么可能是什么问题?

 app.set('views', __dirname + '/views'); app.set('view engine', 'ejs'); app.get('/photos', function(req, res) { res.render('/pages/photo'); }); app.get('/message', function(req, res) { res.render('/pages/message'); }); 

  1. 你不需要明确定义视图,它会自动默认为视图文件夹。
  2. 确保你的直接结构如下:
 / app.js <---the code above /views /pages photo.ejs message.ejs 

并按照@robertklep的说法去除视图前的'/'

模板path应该是相对的(对views目录):

 res.render('pages/photo'); res.render('pages/message'); 

这些文件也应该以.ejs作为扩展名。