在 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
调用中使用它。
通过使用 <DataGrid autoPageSize/>
,如 in the docs 所述,您可以获得 Material UI table 自动设置页面大小(即页数每页行数)基于浏览器高度。但是,如果您正在从服务器逐步加载数据,则需要知道该页面大小是多少,以便了解每页加载多少数据,以及 table 最多加载到哪一行。据我所知,DataGrid
只允许您访问 页码 (通过各种事件),这不会让您确定页面 尺寸.
该组件确实允许您访问 pageSizeChange
事件,但是当组件使用 autoPageSize
自动设置其页面大小时,这实际上并没有触发,因此它在这里没有帮助。
我也 运行 遇到了尝试将 DataGrid 与服务器端分页一起使用的问题。经过一番挖掘,我发现我能够看到 onPageSizeChange
在组件首次加载时被触发。看到这个 codesandbox.
如果您在刷新 codesandbox 浏览器后查看控制台,它会打印 0,然后是 5。您可以将其保存到状态中,然后在 onPageChange
调用中使用它。