忽略树枝中的未知标签

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了忽略树枝中的未知标签相关的知识,希望对你有一定的参考价值。

我有一些用Twig编写的模板。然后我编写了一个单独的脚本来使用CLI运行。这个脚本允许我扫描我的模板并编译我的Assetic资产。

问题是我有一些自定义的Twig令牌解析器供应用程序使用,但是,脚本不需要它们来扫描和编译我的Assets。其中一些标签非常复杂,需要完整的应用程序才能运行。

有没有一种简单的方法让Twig忽略未知标签?

一种可能的解决方案是创建一个虚拟标记解析器,并给它与标记相同的名称,但这对我来说似乎非常讨厌,我想避免走这条路。

答案

我只是编写了一个令牌解析器,将令牌解析器移动到块的末尾。

我还提供了一种在构造函数中设置'令牌名称'的方法:$twig->addTokenParser(new DummyTokenParser('abc'));

这将允许DummyTokenParser接管名为abc的标签。

可以用它来替换多种类型的标签:

$twig->addTokenParser(new DummyTokenParser('tag1'));
$twig->addTokenParser(new DummyTokenParser('tag2'));

以上是关于忽略树枝中的未知标签的主要内容,如果未能解决你的问题,请参考以下文章

如何忽略未知标签的验证?

如何忽略 VueJS 中的自定义 html 标签?

自定义 Symfony2 过滤器未使用自定义树枝标签触发

如何在grav中选择我的树枝模板中的所有标签?

从 appengine 上传到 bigquery 时如何忽略未知值

您如何全局设置 Jackson 以忽略 Spring 中的未知属性?