无法在jekyll中循环嵌套数组 - JSON数据文件

时间:2018-01-28 11:33:30

标签: json jekyll

我使用此数据文件显示页脚的标记,我尝试根据数组links1.items呈现链接列表。我用来遍历它的代码如下。任何人都可以告诉我代码是否有问题或者json是如何构造的。

/ _数据/ footer.json

{
  "aboutus": [{
    "title": "About Us",
    "desc": "Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat. Eodem modo typi, qui nunc. Claritas est etiam processus dynamicus, qui sequitur mutationem consuetudium lectorum. Mirum est notare quam littera gothica, quamz nunc putamus."
  }],
  "links1": [{
    "title": "Useful Links",
    "items": [
      {
        "title": "Blog",
        "url": "#"
      },
      {
        "title": "Blog",
        "url": "#"
      },
      {
        "title": "Blog",
        "url": "#"
      },
      {
        "title": "Blog",
        "url": "#"
      }
    ]
  }]
}

Jekyll代码

{% for item in site.data.footer.links1.items %}
  <li>
    <a href="{{item.url}}">{{item.title}}</a>
  </li>
{% endfor %}

1 个答案:

答案 0 :(得分:1)

site.data.footer.links1是一个包含一个元素的数组。 你可以使用site.data.footer.links1.first获得它。

此代码有效:

{% for item in site.data.footer.links1.first.items %}
  <li>
    <a href="{{item.url}}">{{item.title}}</a>
  </li>
{% endfor %}

删除links1

周围的括号
{
  "aboutus": [{
    "title": "About Us",
    "desc": "Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat. Eodem modo typi, qui nunc. Claritas est etiam processus dynamicus, qui sequitur mutationem consuetudium lectorum. Mirum est notare quam littera gothica, quamz nunc putamus."
  }],
  "links1": {
    "title": "Useful Links",
    "items": [
      {
        "title": "Blog",
        "url": "#"
      },
      {
        "title": "Blog",
        "url": "#"
      },
      {
        "title": "Blog",
        "url": "#"
      },
      {
        "title": "Blog",
        "url": "#"
      }
    ]
  }
}