是否可以使用快速把手仅在没有布局的情况下渲染部分?

时间:2017-04-03 21:21:35

标签: express handlebars.js express-handlebars

我已正确设置具有以下目录结构的快速把手:

views/
    layouts/
    partials/

user-search-partial.html(存储在视图> partials中)

<div id="user-search">

    <h1>Search Users</h1>

</div>

渲染块

res.render('partials/site-user-search', { layout: false });

在前端上使用Angular,对部分视图进行各种xhr请求,我需要在没有任何布局/视图包装的情况下渲染上面的部分。我设法通过在res.render视图名称中添加'partials'目录名来实现这一点,但感觉就像一个黑客。我想知道,是否有另一种加载方式的方法,可能是通过向locals / options对象添加partials声明(第二个res.render参数)?

1 个答案:

答案 0 :(得分:0)

您可以使用if条件。例如,在默认layout.hbs中:

{{#if layout}}<!DOCTYPE html>
<html>
  <head>
    <title>{{title}}</title>
    <link rel='stylesheet' href='/stylesheets/style.css' />
  </head>
  <body>
    {{/if}}{{{body}}}{{#if layout}}
  </body>
</html>{{/if}}