在 YAML 列表中,为什么在工作之前使用“-”而不是破折号

in a YAML list, why does "-" before the work vs no dash

这纯粹是为了让我了解情况的逻辑。

使用此 jekyll 设置时

{% for documents in site.data.documents %}
<h5>{{documents.family}}</h5>
{% endfor %}

为什么以破折号开头的 yaml 代码与不以破折号开头的相比更有效?

这有效

- family:
  - family-name: "watchdog"
    product:
    - name: "Watchdog 2 Mesh"
      doc-type: "data-sheet"
      language:
        - version: "english"

这不是

  family:
  - family-name: "watchdog"
    product:
    - name: "Watchdog 2 Mesh"
      doc-type: "data-sheet"
      language:
        - version: "english"

您的 YAML 必须确认执行解析的应用程序期望的内容。在这种情况下,省略破折号会使顶层成为映射而不是序列(具有一个元素),jekyll 期望在顶层有一个序列。