如何包含 YMF 中定义的部分 (Assemble.io / Handlebars.js)
How to include Partials defined in YMF (Assemble.io / Handlebars.js)
我使用assemble.io为一个简单的网页生成一些静态文件。
现在我想在 YAML Front Matter 中定义一个部分列表,它应该包含在生成的页面中。
我要这个
<div class="slides">
{{>slide-intro}}
{{>slide-welcome}}
{{>slide-goodbye}}
</div>
被这样的东西代替:
---
slides:
- slide-intro
- slide-welcome
- slide-goodbye
---
<div class="slides">
{{#each slides}}
{{>this}}
{{/each}}
</div>
所以,我想使用存储在this
(例如slide-welcome
)中的变量内容作为要包含的部分的名称。
我看到使用 {{>this}}
不起作用,但我不知道在哪里寻找解决方案。
有人可以帮我吗?
引入了 Handlebars 3 Dynamic Partials,您可以像这样使用它们:
---
slides:
- slide-intro
- slide-welcome
- slide-goodbye
---
<div class="slides">
{{#each slides}}
{{> (lookup ../slides @index) }}
{{/each}}
</div>
但是,assemble 0.4.x 使用的是 Handlebars 1,所以切换到 grunt-assemble,它使用 Handlebars 3。grunt-assemble 是基于相同的代码, 它只是被移动以反映它是一个 grunt 插件。
我使用assemble.io为一个简单的网页生成一些静态文件。
现在我想在 YAML Front Matter 中定义一个部分列表,它应该包含在生成的页面中。
我要这个
<div class="slides">
{{>slide-intro}}
{{>slide-welcome}}
{{>slide-goodbye}}
</div>
被这样的东西代替:
---
slides:
- slide-intro
- slide-welcome
- slide-goodbye
---
<div class="slides">
{{#each slides}}
{{>this}}
{{/each}}
</div>
所以,我想使用存储在this
(例如slide-welcome
)中的变量内容作为要包含的部分的名称。
我看到使用 {{>this}}
不起作用,但我不知道在哪里寻找解决方案。
有人可以帮我吗?
引入了 Handlebars 3 Dynamic Partials,您可以像这样使用它们:
---
slides:
- slide-intro
- slide-welcome
- slide-goodbye
---
<div class="slides">
{{#each slides}}
{{> (lookup ../slides @index) }}
{{/each}}
</div>
但是,assemble 0.4.x 使用的是 Handlebars 1,所以切换到 grunt-assemble,它使用 Handlebars 3。grunt-assemble 是基于相同的代码, 它只是被移动以反映它是一个 grunt 插件。