CNode

用express的res.render(),如何加载views文件夹里面又一文件夹下的模板

问答
GGreenyDo发布于10 年前最后回复10 年前3 回复10319 浏览0 收藏

用的是express+jade 文件夹目录是这样的 QQ截图20160610162813.png

我知道设置views是这样的 app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'jade');

要是这样res.render('/web/nodejs/async_io.jade'); 就不行, 也要设置web/nodejs这个文件夹么? 看了官方文档也没看懂,求大神解答啊!

查看回复

回复 (3)

A
Alexis374#1·10 年前

报什么错。。。。你可以在express源码里加断点调试, res.render -> app.render -> 构造View (https://github.com/expressjs/express/blob/master/lib/view.js#L54),应该就是在这一步出错了。加断点调试一下就行了

F
flamingtop#2·10 年前
  1. 说出错了是不够的,要把具体错误贴出来
  2. 我记得sub-folder是支持的,你有没有试过路径'web/nodejs/xxx.jade‘
  3. 你有没有在相应的.jade文件里包括 extend layout ...

加上文件夹路径就可以的,res.render(’web/nodejs/async_io);不行吗

参与回复
登录后即可参与回复。登录