TYPO3 - 复杂流体条件 f:如果在 8.7 中不起作用



我在 8.7 中尝试了一个复杂的 f:if 条件,如下所述: https://docs.typo3.org/typo3cms/ExtbaseGuide/Fluid/ViewHelper/If.html

。但是我所有的尝试都失败了(不起作用(:

<h3 class="record-title" id="title"><f:if condition="{record.type}!='medium' || {record.type}!='large'">{record.firstname} - </f:if>{record.name}</h3>
<h3 class="record-title" id="title"><f:if condition="{0:record.type,1:record.type}!={0:medium,1:large}">{record.firstname} - </f:if>{record.name}</h3>
<h3 class="record-title" id="title"><f:if condition="{0:record.type,1:record.type}!={0:'medium',1:'large'}">{record.firstname} - </f:if>{record.name}</h3>

。相反,我需要这样做(工作(:

<h3 class="record-title" id="title">
<f:if condition="{record.type}!='medium'">
<f:if condition="{record.type}!='large'">
{record.firstname} - 
</f:if>
</f:if>
{record.name}
</h3>

为什么它没有像描述的那样工作?我正在使用 8.7.16 ...

您的第一个条件工作正常,但它不等于适合您的示例,例如嵌套<f:if>&&一样工作,而您的第一个条件使用||.

在第二个条件下,缺少引号。

第三个将始终返回true,因为您将['X', 'X']之类的东西与['medium', 'large']进行比较。如果X == 'medium'那么X != 'large'- 没有其他办法。

要使其正常工作,您只需要在第一个条件下将||更改为&&即可。

<h3 class="record-title" id="title">
<f:if condition="{record.type}!='medium' && {record.type}!='large'">{record.firstname} - </f:if>
{record.name}
</h3>

相关内容

  • 没有找到相关文章

最新更新