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
,这在条件中为真。
有没有办法在 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
,这在条件中为真。