Twig 细枝宏+;街区什么的?

Twig 细枝宏+;街区什么的?,twig,Twig,我是新手。有没有类似于Jade用嵌套块混合的东西? 我的意思是这样的: mixin button(text) .btn .txt= text .dropdown block +button("button") +button("sub1") +button("sub1-1") +button("sub1-2") +button("sub2") +button("sub2-1") .custom1 blah-blah +

我是新手。有没有类似于Jade用嵌套块混合的东西? 我的意思是这样的:

mixin button(text)
  .btn
    .txt= text
    .dropdown
      block

+button("button")
  +button("sub1")
    +button("sub1-1")
    +button("sub1-2")
  +button("sub2")
    +button("sub2-1")
    .custom1 blah-blah
  +button("sub3")
    +button("sub3-1")
    +button("sub3-2")

我找到了某种解决办法。 我刚刚将宏拆分为两个以上的宏

{% __btns.twig %}
{% macro btn1_opening(text) %}
    <div class="button1">
        <div class="text">{{ text }}</div>
        <div class="dropdown">
{% endmacro %}

{% macro btn1_closing() %}
        </div>
    </div>
{% endmacro %}

{# main.twig #}
{% import "__btns.twig" as btns %}
{{ btns.btn1_opening("I am button") }}
    <div class="something-inside-dropdown">
        {% include "somefile.twig" %}
    </div>
{{ btns.btn1_closing() }}
{%\uu btns.twig%}
{%宏btn1_打开(文本)%}
{{text}}
{%endmacro%}
{%宏btn1_closing()%}
{%endmacro%}
{#main.twig}
{%import“\uu btns.twig”作为btns%}
{{btns.btn1_打开(“我是按钮”)}
{%include“somefile.twig”%}
{{btns.btn1_closing()}}

因此,在这种情况下,即使我的宏中需要多个块,我也可以在打开、中间和关闭宏之间编写一些HTML。

我找到了某种解决方案。 我刚刚将宏拆分为两个以上的宏

{% __btns.twig %}
{% macro btn1_opening(text) %}
    <div class="button1">
        <div class="text">{{ text }}</div>
        <div class="dropdown">
{% endmacro %}

{% macro btn1_closing() %}
        </div>
    </div>
{% endmacro %}

{# main.twig #}
{% import "__btns.twig" as btns %}
{{ btns.btn1_opening("I am button") }}
    <div class="something-inside-dropdown">
        {% include "somefile.twig" %}
    </div>
{{ btns.btn1_closing() }}
{%\uu btns.twig%}
{%宏btn1_打开(文本)%}
{{text}}
{%endmacro%}
{%宏btn1_closing()%}
{%endmacro%}
{#main.twig}
{%import“\uu btns.twig”作为btns%}
{{btns.btn1_打开(“我是按钮”)}
{%include“somefile.twig”%}
{{btns.btn1_closing()}}

因此,在这种情况下,即使我的宏中需要多个块,我也可以在打开、中间和关闭宏之间编写一些HTML。

你能解释一下给定代码的HTML结果吗?@AlainTiemblo看起来我找到了解决方案。我知道它有多好,但它对我有用。使用单个宏获得相同的结果会更好,但我仍然找不到如何做到这一点。你能解释一下给定代码的html结果是什么吗?@AlainTiemblo看起来我找到了解决方案。我知道它有多好,但它对我有用。使用单个宏得到相同的结果会更好,但我仍然找不到如何做到这一点