根据 _data 目录中的 Jekyll 文档 you can access YAML, JSON, and CSV files 使用 {{ site.data.filename }}

我有一个名为 chapters.json 的点要素的有效 geoJson 文件。我能够访问该文件,但是当我在我的 javascript 中使用该文件时,我看到了一些奇怪的字符。
chapters.json 摘录:

{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": {
        "title": "MaptimeBER"
      },
      "geometry": {
        "type": "Point",
        "coordinates": [
          13.391,
          52.521
        ]
      }
    },
    {...}
  ]
}

例如,当 Jekyll 处理以下内容时: var chapters = {{ site.data.chapters }};
输出 Javascript 是:
var chapters = {"type"=>"FeatureCollection", "features"=>[{"type"=>"Feature", "properties"=> ...
我的问题是,为什么分隔键值对的冒号变为 => ?它导致我的 javascript 出错。

最佳答案

使用 jsonify 过滤器,它将 Hash 或 Array 转换为 JSON :

var chapters = {{ site.data.chapters | jsonify }};

10-06 00:34