用express的res.render(),如何加载views文件夹里面又一文件夹下的模板
用的是express+jade 文件夹目录是这样的
我知道设置views是这样的 app.set(‘views’, path.join(__dirname, ‘views’)); app.set(‘view engine’, ‘jade’);
要是这样res.render(’/web/nodejs/async_io.jade’); 就不行, 也要设置web/nodejs这个文件夹么? 看了官方文档也没看懂,求大神解答啊!
3 回复
报什么错。。。。你可以在express源码里加断点调试, res.render -> app.render -> 构造View (https://github.com/expressjs/express/blob/master/lib/view.js#L54),应该就是在这一步出错了。加断点调试一下就行了
- 说出错了是不够的,要把具体错误贴出来
- 我记得sub-folder是支持的,你有没有试过路径’web/nodejs/xxx.jade‘
- 你有没有在相应的.jade文件里包括 extend layout …
加上文件夹路径就可以的,res.render(’web/nodejs/async_io);不行吗