p:dataTable中的延迟加载和expandableRowGroups

时间:2020-07-06 12:58:31

标签: jsf primefaces

我正在为PrimeFaces DataTable和延迟加载而苦苦挣扎。这是我的桌子:

<p:dataTable var="entry"
            value="#{app.table}" scrollable="true"
            scrollHeight="400" virtual="true" lazy="true" virtualScroll="true"
            rows="40" scrollRows="20"
            sortBy="#{entry.group}" sortOrder="ascending"
            expandableRowGroups="true"
            resizableColumns="true" liveResize="true">
    <p:headerRow>
        <p:column colspan="2">
             <h:outputText value="#{entry.group}" />
        </p:column>
    </p:headerRow>
    <p:column headerText="Group">
        <h:outputText value="#{entry.group}" />
    </p:column>
    <p:column headerText="Value">
        <h:outputText value="#{entry.value}" />
    </p:column>
</p:dataTable>

最初,一切看起来都很好。分组和输入正确。但是在滚动(并加载下一行)之后,所有组都将丢失。即使您滚动回到顶部。

PrimeFaces是否支持在同一表中进行延迟加载和分组?将组与LazyDataModel一起使用时,需要考虑什么吗?是否有带有expandableRowGroups和延迟加载的表的示例?

设置 rows =#{app.table.size()} 可以解决此问题(但也可以禁用延迟加载)。对于> 5k行,这不是选项。

TIA!

0 个答案:

没有答案