Twig中include with only
的真正目的是什么:
{# only the foo variable will be accessible #}
{% include 'child.html.twig' with {'foo': 'bar'} only %}
也许一些表现的好处?或者只是为了避免包含模板中的覆盖变量?正如documentation:
包含的模板可以访问活动上下文的变量。您可以通过附加唯一关键字来禁用对上下文的访问。
答案 0 :(得分:19)
当您包含模板时,它可以访问包含模板中可用的所有变量。如果由于某种原因您不想这样做,请使用only
关键字。
当我需要时,我并没有处于这种情况,但除了表现之外,可能还有其他原因。例如,您可以使用它来避免在某些情况下命名冲突。