Допустим, у меня есть два файла, button.html
и toggle.html
. В этом примере кнопка не имеет значения, а переключение - нет. Это код для переключения:
{% if include.value %}
{% assign addonclass = 'addon-class' %}
{% endif %}
<div class="toggle {{addonclass}}">
Some content
</div>
Что имеет смысл, я хочу добавить класс к этому div, если когда бы я ни делал
{% include toggle.html value = "somevalue" %}
Вот кикер, хотя. Само по себе это прекрасно работает, однако, если я на странице, я делаю следующее:
{% include button.html value = "some value" %}
{% include toggle.html %}
Оператор if внутри переключателя будет истинным, однако он не будет выводить {{value}}
, он просто будет пустым. Что за черт? Не должен ли каждый «компонент» иметь в виду свои собственные реквизиты, а не все реквизиты, определенные везде? Я понимаю, что должен сделать что-то вроде:
{% assign labelclass = '' %}
Но почему? Почему я могу передавать реквизиты компонентам, если они передаются всем вызванным компонентам? Я запускаю это с Джекилом, кстати, если это что-то меняет.