如何将 Liquid 数组转换为 Javascript 数组?
How to convert Liquid array to a Javascript array?
在我的 Jekyll 站点中,我想从 _data/stocks.yml
加载数据并在 Chart.js 支持的图表中使用这些数据。 Chart.js 接受图表数据集和标签作为简单的 Javascript 数组。有没有一种简单的方法可以将 Liquid 数组转换为 Javascript 数组或映射?
我尝试这样做:var months = {{ site.data.stocks.yml | json }}
但我认为这只适用于个人 strings/variables 而不是集合结构。
_data/stocks.yml
文件:
- month: Jan '20
portfolio: '-4.5'
spy: '-0.16'
- month: Feb '20
portfolio: '-19.2'
spy: '-8.41'
- month: Mar '20
portfolio: '-19.1'
spy: '-12.51'
我认为您要完成的工作存在两个问题。
首先,根据jekyll documentation,您应该访问格式为site.data.datafile
且没有扩展名.yml
的数据文件。在您的情况下,您将使用 {{ site.data.stocks }}
访问您的数据
第二个是转换为json的jekyll(液体)过滤器是| jsonify
,而不是| json
。因此,要将您的股票数据文件转换为 json,您可以使用 {{ site.data.stocks | jsonify }}
在我的 Jekyll 站点中,我想从 _data/stocks.yml
加载数据并在 Chart.js 支持的图表中使用这些数据。 Chart.js 接受图表数据集和标签作为简单的 Javascript 数组。有没有一种简单的方法可以将 Liquid 数组转换为 Javascript 数组或映射?
我尝试这样做:var months = {{ site.data.stocks.yml | json }}
但我认为这只适用于个人 strings/variables 而不是集合结构。
_data/stocks.yml
文件:
- month: Jan '20
portfolio: '-4.5'
spy: '-0.16'
- month: Feb '20
portfolio: '-19.2'
spy: '-8.41'
- month: Mar '20
portfolio: '-19.1'
spy: '-12.51'
我认为您要完成的工作存在两个问题。
首先,根据jekyll documentation,您应该访问格式为site.data.datafile
且没有扩展名.yml
的数据文件。在您的情况下,您将使用 {{ site.data.stocks }}
第二个是转换为json的jekyll(液体)过滤器是| jsonify
,而不是| json
。因此,要将您的股票数据文件转换为 json,您可以使用 {{ site.data.stocks | jsonify }}