在探索Jekyll进行网站生成时,我遇到了JSON数据加载问题.我已生成默认的Jekyll站点,将tracks.json文件添加到_data文件夹并将此代码添加到默认值index.html
<span>Tracks:</span>
<ul>
  {% for track in site.data.tracks.tracks %}
    <li>Title: {{ track.title }}</li>
  {% endfor %}    
</ul>
结果我得到了这个代码:
<span>Tracks:</span>
<ul>
</ul>
tracks.json 好像:
{
   "tracks":[
      {
         "id":"140",
         "title":"Android"
      },
      {
         "id":"142",
         "title":"GDG[x]"
      }
   ]
}
我使用正确的方式访问JSON字段吗?如果没有,那么正确的方法是什么?
更新: 问题已在Jekyll v.2.1.0中修复
您可以将.json文件中的顶级元素设为如下数组:
[{
  "id":"140",
  "title":"Android"
},
{
  "id":"142",
  "title":"GDG[x]"
}]
然后你可以像这样更简单地访问它{% for track in site.data.tracks %}.
我真的建议使用 yaml 来代替:)。Jekyll 原生支持它(你可以把它放在 _config.yml 中(然后你可以在很多页面中使用它)或页面的 YAML Front Matter 中(然后它可供页面本身使用)。当你把它放在那里时,数据就会被解析by jekyll,您可以直接从那里使用它。
您甚至可以相当轻松地将 Json 转换为 Yaml: https: //www.npmjs.org/package/json2yaml
Yaml 是相当不错的格式,在某些方面甚至比 JSON 更好
| 归档时间: | 
 | 
| 查看次数: | 7891 次 | 
| 最近记录: |