在 Material UI `<DataGrid autoPageSize/>` 中访问页面大小

Access the page size in a Material UI `<DataGrid autoPageSize/>`

通过使用 <DataGrid autoPageSize/>,如 in the docs 所述,您可以获得 Material UI table 自动设置页面大小(即页数每页行数)基于浏览器高度。但是,如果您正在从服务器逐步加载数据,则需要知道该页面大小是多少,以便了解每页加载多少数据,以及 table 最多加载到哪一行。据我所知,DataGrid 只允许您访问 页码 (通过各种事件),这不会让您确定页面 尺寸.

该组件确实允许您访问 pageSizeChange 事件,但是当组件使用 autoPageSize 自动设置其页面大小时,这实际上并没有触发,因此它在这里没有帮助。

我也 运行 遇到了尝试将 DataGrid 与服务器端分页一起使用的问题。经过一番挖掘,我发现我能够看到 onPageSizeChange 在组件首次加载时被触发。看到这个 codesandbox.

如果您在刷新 codesandbox 浏览器后查看控制台,它会打印 0,然后是 5。您可以将其保存到状态中,然后在 onPageChange 调用中使用它。