我正在使用 Jekyll 框架并使用他们网站上的官方 Carousel 脚本(https://jekyllcodex.org/without-plugin/slider/),我正在努力弄清楚如何将名称传递给carousel.html 脚本,以便我可以使用相同的脚本设置多个轮播。我的目标是能够使用:
{% include carousel.html name="CatImages" height="20" unit="%" duration="7" %}
它应该能够简单地从 carousel.yml 文件中接收图像,类似于:`
CatImages:
- /assets/img/cat1.png
- /assets/img/cat2.png
我试图将字符串附加到变量名,它有效,但给了我一个稍微不同的输出——我无法弄清楚它的类型。结果变量来自
{{site.data.carousel.{{ include.name }}}}
返回{"CatImages"=>["/assets/img/cat1.png", "/assets/img/cat2.png"]}
,并且在运行 for 循环时,它将图像路径作为一个完整的字符串返回。例如,这个:
{% for item in images %}
{{item}}
{% endfor %}
返回:
images/assets/img/cat1.png/assets/img/cat2.png
但总的来说,我不明白这个变量是什么,我也无法通过谷歌搜索来弄清楚。我是 Liquid 模板的新手,但对于我的生活,我无法弄清楚 {""=>["",""]} 表示法是什么。
任何指示或提示将不胜感激!