树枝模板自动无空格

时间:2019-11-25 08:23:43

标签: php symfony twig spaceless

我有一个使用树枝的项目,其中包含许多html模板。不幸的是,没有加载这些模板的“主”模板。因此,每个树枝模板都是独立的。

是否可以通过这种方式配置树枝,以便将%spaceless%函数应用于每个输出? https://twig.symfony.com/doc/2.x/filters/spaceless.html

{% apply spaceless %}
    <div>
        <strong>foo</strong>
    </div>
{% endapply %}

当然-可以将它们设置到每个单独的树枝模板中,但这是一个很愚蠢的想法,因为对于每个新模板,您都必须“记住”。

我的想法是将其直接(可能是扩展)实施到树枝中,但是我只是没有找到正确的方法来执行此操作?还是有一个树枝选项默认启用此功能?

1 个答案:

答案 0 :(得分:2)

实际上,您可以采用多种选择。我认为其中大多数内容已在此处介绍:

symfony every block with spaceless

在这种情况下,您总是处在覆盖代码的境地。

但是,实际上阻止您从基本模板扩展每个模板并用{% spaceless %}标签将其包围的内容是什么呢? 这样就很干净了,只要您决定创建没有无空间属性的模板,就可以使用通常的块。

您还可以在所有模板上执行“全部替换”,并用我们自己的新标记替换“阻止”。

如果您真的不想要新的标记/节点/东西,也可以编写一个新的令牌解析器来查找常规块,并在确实不想这样做的情况下在其中应用spaceless函数使用{% spaceless %}“记住”。

相关问题