3

假设我有一个来自集合的页面,我想在其中列出来自不同页面集合的每个 yaml 标记。如果它们在同一个集合中,则可以解决问题:

<section class="see-also">
<header>Related Contents:</header>
   {{#each tags}}
   <p>In <span class="tag">{{tag}}</span>:</p>
      {{#each pages}}
        <li><a href="{{relative ../../../page.dest dest}}">{{data.title}}</a></li>
      {{/each}}
   {{/each}}
 </section>

但是由于我试图从另一个页面上的页面访问这个集合,这怎么能实现呢?

4

2 回答 2

1

我建议为此创建一个自定义助手。由于没有简单的方法可以编写一个可以按照您为特定设置描述的方式工作的帮助程序,因此这是一个很好的示例,说明如何使用自定义帮助程序来解决类似问题:https ://github.com/组装/组装/问题/254

于 2013-08-02T16:17:25.080 回答
0

如果我有这个用例,我可能会将“页面”yaml 放在单独的 yml 文件中,而不是嵌入到页面中。

如果在您的 gruntfile 中包含数据文件的路径:

assemble: {
  options: {
    data: ['<%= site.data %>', 'data/*.yml']
  }
}

您的文件结构包括:

── data
│   └── page1.yml
│   └── page2.yml

您可以{{#each page1.pages}}从任何地方访问。

或者,您可以拥有一个shared.yml文件,其中包含所引用的页面集合等信息,而其余数据则保留在每个页面上。

更多资源:

于 2014-04-03T00:06:53.077 回答