将复合组件用于数据列 table 的最佳方法是什么?
What is the best way to use composite components for columns of data table?
我有两个内部包含 <h:dataTable>
的复合组件,它们仅在少数几个内容上有所不同 <h:column>
避免使用复合组件进行复制粘贴的最佳方法是什么?我知道标签,但我的项目中没有任何标签。所以,这对我来说不是解决方案。
向复合组件添加属性:
<cc:interface>
<cc:attribute name="columnType" type="java.lang.String" required="true" />
</cc:interface>
然后在执行
<h:column rendered="#{cc.attrs.columnType eq 'typeAColumns'>
#{data.valueForColumnTypeA}
</h:column>
<h:column rendered="#{cc.attrs.columnType eq 'typeBColumns'>
#{data.valueForColumnTypeB}
</h:column>
你可以像这样使用它
<my:compositeTable columnType="typeAColumns"/>
<my:compositeTable columnType="typeBColumns"/>
我有两个内部包含 <h:dataTable>
的复合组件,它们仅在少数几个内容上有所不同 <h:column>
避免使用复合组件进行复制粘贴的最佳方法是什么?我知道标签,但我的项目中没有任何标签。所以,这对我来说不是解决方案。
向复合组件添加属性:
<cc:interface>
<cc:attribute name="columnType" type="java.lang.String" required="true" />
</cc:interface>
然后在执行
<h:column rendered="#{cc.attrs.columnType eq 'typeAColumns'>
#{data.valueForColumnTypeA}
</h:column>
<h:column rendered="#{cc.attrs.columnType eq 'typeBColumns'>
#{data.valueForColumnTypeB}
</h:column>
你可以像这样使用它
<my:compositeTable columnType="typeAColumns"/>
<my:compositeTable columnType="typeBColumns"/>