Javascript 在一个布局上使用快速分区的多个分区

Javascript 在一个布局上使用快速分区的多个分区,javascript,node.js,express,partials,Javascript,Node.js,Express,Partials,我正在使用Node.js和expressjs3.0。转到3.0,我发现partials不再受支持,随后发现它提供了类似的功能 查看GitHub页面上的示例,我发现: app.get('/',function(req,res,next){ res.render('index.ejs') // -> render layout.ejs with index.ejs as `body`. }) 这很好,但是如果我有一个依赖于多个分区的布局呢?也就是说,如果在layout.ejs文件中

我正在使用Node.js和expressjs3.0。转到3.0,我发现partials不再受支持,随后发现它提供了类似的功能

查看GitHub页面上的示例,我发现:

app.get('/',function(req,res,next){
  res.render('index.ejs') 
  // -> render layout.ejs with index.ejs as `body`.
})
这很好,但是如果我有一个依赖于多个分区的布局呢?也就是说,如果在
layout.ejs
文件中有一个块用于页眉,一个用于内容,一个用于页脚,该怎么办?例如,如果我对整个web应用程序使用一个模板文件,但不同类型的用户具有不同的页眉、内容块和页脚,该怎么办

查看
express partials
的有限文档,我找不到此功能。我期待着这样的事情:

app.get('/', function (req, res) {
   res.render({header: 'header1.ejs', content: 'some_file.ejs', footer: 'footer1.ejs'});
   // -> render layout.ejs with header1.ejs as `header`, some_file.ejs as `content, and footer.ejs as `footer
});

如何实现此功能?

我建议您使用ejs包含+开关

对不起,我不熟悉ejs语法,所以–jade,但本质是一样的:

app.get('/', function (req, res) {
   res.render('index', {
       header: 'header1', 
       , content: 'content1', 
       , footer: 'footer1'
    });
});

index.jade
===========
//- header
case header
  when "header1":
    include "includes/header1"
  when "header2":
    include "includes/header2"
...
case content
  when "content1":
    include "includes/some_file1"
  when "content2":
    include "includes/some_file2"
....

谢谢你的回答,亚历克斯。但是,有没有办法从路线/管制员处执行此操作?