在Express中渲染玉石时包含其他文件的内容?

我有以下的layout.jade:

!!! html head title= title link(rel='stylesheet', href='/stylesheets/style.css') body!= body 

在正文中,我想包含另一个文件content.jade的内容。

我想在app.js中这样的事情:

 app.get('/test', function(req, res){ res.render('layout', { layout: false, body: include content.jade }); }); 

但是它给了SyntaxError:'content'意外的标识符。 有没有办法做到这一点?

你必须渲染你的内容(主体)文件,而不是布局。 使用布局:true param(这是默认的,我认为)玉会自动使用layout.jade来渲染你的页面的“框架”,然后在bodyvariables中传递你的内容,传递给布局(参见Expres doc )。 所以:

 res.render('content'); 

应该做这个工作。