我正在尝试使此代码正常工作:
<f:if condition="{item.spacer} || {item.current}">
<f:then>
<li class="{f:if(condition:item.current, then:'nav-item active')}{f:if(condition:item.spacer, then:'nav-item spacer')}">
<f:render partial="Navigation/Elements/Link" arguments="{item: item}"/>
</f:then>
<f:else if="{item.children} && {item.active}">
<li class="nav-item dropdown active">
<f:render partial="Navigation/Elements/Link" arguments="{item: item}"/>
</f:else>
<f:else if="{item.children}">
<li class="{f:if(condition:item.children, then:'nav-item dropdown')}">
<f:render partial="Navigation/Elements/Link" arguments="{item: item}"/>
</f:else>
<f:else if="{item.active}">
<li class="{f:if(condition:item.active, then:'nav-item active')}">
<f:render partial="Navigation/Elements/Link" arguments="{item: item}"/>
</f:else>
<f:else>
<li class="nav-item">
<f:render partial="Navigation/Elements/Link" arguments="{item: item}"/>
</f:else>
</f:if>
之后,li标记在父部分中关闭。如果不是,唯一的不起作用就是综合条件。虽然item.children和item.active均为true,但仅显示由item.active组成的条件。我在这里做什么错了?
谢谢乔纳森
答案 0 :(得分:1)
活动的MenuItems具有current = 1和active = 1。在第一个If条件中,检查current,如果= 1,则执行以下“ then”。此后,未检查其他任何对象,因此,它不起作用。由于我不需要Invoice
,因此此代码对我有用:
{item.spacer} || {item.current}