我正在使用Twig PatternLab。
我在JSON和Twig for循环中遇到了一个小问题。
Atom 00-h3-black.twig:
<h3 class="A-ChevronBlack"><a href="">{{ text.chevron }}</a></h3>
Molecule 00-mastertile.twig:
<div class="M-DMasterTile">
<div class="image"></div>
<div class="content">
{% include "atoms-h3-black" %}
</div>
</div>
生物00-default2.twig:
{% for post in default2 %}
{% include "molecules-mastertile" %}
{% endfor %}
在Organism文件夹00-default2.json
中的JSON {
"default2" : [
{
"text" : {
"chevron" : "How to build a campfire",
"body" : "This is the body copy"
}
},
{
"text" : {
"chevron":"Lorem Ipsum",
"body" : "This is the body copy"
}
}
]
}
我的期望是“default2”循环两次,因为我在JSON中有一个包含2个项目的数组并推送JSON内容。如果我从JSON数组中取出变量,它会显示变化(但显然是重复的)。
我在这里做错了什么?
感谢您的帮助
答案 0 :(得分:1)
include使用全局范围,其中没有变量text
。使用include with
语法将变量传递到内部范围。
您的Organisms 00-default2.twig
应如下所示:
{% for post in default2 %}
{% include "molecules-mastertile" with {'text': post.text} %}
{% endfor %}