JSF 战斧 t:columns 条件渲染

JSF tomahawk t:columns conditional rendering

所以,嗯,我有 JSF 战斧 table

<t:dataTable ... >
    <t:columns ...>
          ... content to render ...
    </t:columns>
</t:dataTable>

而且我想省略一些列。我无法更改数据模型。列总数不时变化。

尝试过

<t:dataTable ... >
    <t:columns ...>
         <c:if  test="#{condition}">
                ... content to render ...
         </c:if>
    </t:columns>
</t:dataTable>

但它仍然输出空列。

这个答案不是一个选项: Conditional column rendering

因为我使用 t:columns 而不是 t:column

如何在使用 t:columns 时省略某些列?

我加display:none;如果满足条件,则为 header 和行样式(在这种情况下省略 header 名称)。所选列消失。

<t:dataTable ... >
    <t:columns var="colH" value="#{dataModel.colHeaders}"  headerstyle="#{colH eq 'frodo'? 'display:none;' : ''}" style="#{colH eq 'frodo'? 'display:none;' : ''}">
          ... content to render ...
    </t:columns>
</t:dataTable>