我可以使用汇编在页面上渲染所有部分及其内容吗?

时间:2014-02-13 07:25:45

标签: assemble

我在以下目录结构中有一堆部分:

src
└── content
    ├── pages
    │   ├── index.hbs
    │   └── patterns.hbs
    ├── partials
    │   ├── _footer-subpage.hbs
    │   ├── _footer.hbs
    │   ├── _head-subpage.hbs
    │   ├── _head.hbs
    │   └── patterns
    │       └── dropdown
    │           ├── dropdown.hbs
    │           └── dropdown.json
    └── templates
        ├── custom.hbs
        └── default.hbs

我希望能够遍历src/content/partials/patterns目录中的所有部分并在页面上输出它们的内容。我手动包括像这样的部分的那一刻:

{{> dropdown }}

{{> another-partial }}

{{> another-partial }}

...

是否可以像pages collections一样动态地执行此操作?

修改

抱歉,我应该更加详细地了解我正在努力实现的目标。它有点复杂......

这是我目前正在全面详细介绍但想以编程方式执行的操作:

<h3>{{dropdown.info.title}}</h3>                                        <-- name

<p>{{dropdown.info.description}}</p>                                    <-- description


{{> dropdown dropdown }}

{{#markdown}}``\{{> dropdown dropdown }}``{{/markdown}}                 <-- example

<h4>dropdown.hbs</h4>

{{#markdown}}
{{embed 'src/content/partials/patterns/dropdown/dropdown.hbs' 'html'}}  <-- source
{{/markdown}}

<h4>dropdown.json</h4>

{{#markdown}}
{{embed 'src/content/partials/patterns/dropdown/dropdown.json' 'json'}} <-- data
{{/markdown}}

dropdown.info.title正在使用与数据部分相同的目录中的.json文件。

我基本上是从pattern-lab.info复制功能以引入一堆组件来创建“模式”库但不想手动执行。

以下是所需输出的示例。

Sample "pattern"

我正在使用的代码是https://github.com/sheedy/ux-prototype(“dev”分支)。

1 个答案:

答案 0 :(得分:1)

尝试使用compose helper

然后你可以......

{{compose src="src/content/partials/patterns/**/*.hbs"}}
  {{@content}}
{{/compose}}