2

我刚开始使用 Express 浏览 Node,最后根据Consolidate JS Github 页面上的说明,让 Consolidate JS 正常工作,以使用 Mustache 作为模板视图系统。

Mustache 正在正确加载,但我现在想知道如何在模板的渲染中包含布局文件。默认的 Jade 系统会在 layout.jade 文件中加载 .render 方法的内容。我只是想知道如何做同样的事情,但要使用 Mustache。任何帮助是极大的赞赏!

代码:

index.js

 exports.index = function(req, res){
    res.render('index', { title: "Work pl0x?" });
 });

index.mustache

欢迎来到 {{title}}

我只希望 index.mustache 内容出现在下面代码的“{{content}}”部分(layout.mustache)。我怎样才能做到这一点?

 <!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta charset="UTF-8" />
 <title>Project Name | {{title}}</title>
 <link href="/stylesheets/style.css" rel="stylesheet" />
 </head>

 <body>

     {{content}}

 </body>
 </html>
4

2 回答 2

3

获得这种行为(某种)的一种方法是:

exports.index = function(req, res){
  res.render('layout', { title: "Work pl0x?", partials: { content: "index" });
});

然后在你的 layout.html 中这样写

<body>
  {{>content}}
</body>
于 2013-10-10T13:29:51.167 回答
0

自 3.0 起,布局的概念已从 express 中删除。这是包含更多信息的参考链接。

于 2012-10-28T16:57:48.923 回答