1

我对 DataTable 和延迟加载有疑问。

当我激活延迟加载参数(我无法删除,因为来自 api 的请求太大)时,激活延迟加载时过滤和排序不起作用。我理解它为什么会这样,但我真的不知道如何解决它。

如果您有任何解决方案,我会接受,因为我真的被困在这里:)

链接到代码沙盒-> https://codesandbox.io/s/datatable-t92wk

我在 primereact 中对基本示例进行了一些修改,例如添加延迟加载、删除分页并通过虚拟滚动替换它。我还对过滤进行了修改,但我认为我所做的并不正确,但它在这种情况下有效:它停止了延迟变量,因此我可以使用延迟加载。

我想做的是对表中已经加载的数据进行排序:)

谢谢

4

1 回答 1

0

有同样的问题。显然您不能使用延迟加载模式(链接)进行过滤。真的有道理。

对于排序,您可以传递一个onSort函数,并且每次发生排序事件(即:用户单击列标题)时,您都可以发回数据库请求。

const onSort = (e) => {
 // use e.sortField and e.sortOrder to send a DB request,
}

<DataTable onSort={onSort} ... // rest of the stuff />
于 2021-03-25T16:52:04.417 回答