Typo3 Fluid 在 f:if 中使用 Condition View 助手

Typo3 Fluid use Condition View helper in f:if

有没有办法在 f:if 中使用 ConditionViewHelpers?

例如(以 VHS isInteger 为例):

Standalone Tag works:
<vhs:condition.type.isInteger value="1">TRUE1</vhs:condition.type.isInteger>

Standalone Inline works:
{vhs:condition.type.isInteger(value:1, then:'TRUE2')}

Inline in if doesn't work:
<f:if condition="{vhs:condition.type.isInteger (value:1)}">TRUE3</f:if>

这将输出

TRUE1 TRUE2

所以我的问题是,我可以在标准 f:if 中使用 AbstractConditionViewHelper 的子类吗?

我的最终目标是结合条件,比如

<f:if condition="{var} == 1 && {vhs:condition.type.isInteger(value:1)}">...</f:if>

我正在使用 Typo3 10.4

是的,您可以在 f:if 中的条件内使用 ViewHelpers。 ViewHelper 的结果将是条件的输入。但是,{vhs:condition.type.isInteger(value:1)} 的结果是一个空字符串,因为您还没有设置 then。你需要的是{vhs:condition.type.isInteger(value:1, then: '1')}。这将导致 1,这在条件中为真。