0

我正在尝试使用 twig 遵循原子设计模式

渲染一个简单的原子时,我需要执行以下操作:

{% include '@MyBundle/Resources/views/atoms/button/button.html.twig' with { href: '/section1', text: 'Example text' } only %}

当原子或组件有更多变量,或者目录结构有点复杂时,这种方法开始变得混乱。

能够做类似的事情我会很棒:

{% button('/section1','Example text') %}

我知道这可以通过 twig 函数来实现,但我担心这种模式在使用更大的代码库时会变得棘手。

有这方面的经验吗?干杯!

4

1 回答 1

1

你可以使用macro结构。阅读文档:http ://twig.sensiolabs.org/doc/tags/macro.html

{% macro button(href, text) %}
    {% here you can place your template %}
{% endmacro %}

然后你只需要一次导入你的树枝文件macro。之后,您可以使用{% button('/section1','Example text') %}.

于 2015-05-15T11:19:59.120 回答