带分页的 aggrid 中的行数
Row count in aggrid with pagination
我正在使用带分页的 aggrid(客户端)。
我需要获取当前页面中存在的行数。
当我使用下面的 api 时,它总是给我所有页面中存在的所有行的计数。
gridApi.paginationGetRowCount()
gridApi.getDisplayedRowCount()
gridApi.paginationProxy.masterRowCount
您需要的是GridApi.paginationGetPageSize()
。
GridApi.paginationGetRowCount()
returns 所有页面的总行数。
GridApi.getDisplayedRowCount()
returns 所有页面的总行数,加上所有展开的行(使用 Row Grouping or Master Detail 时)。
GridApi.paginationProxy
是私有的 属性,不应使用。
如果要获取当前页的行数。您可以自己计算该页面的 startResult
和 endResult
。该页的行数为 endResult
- startResult
+ 1
const printPagination = () => {
const currentPage = gridApi.paginationGetCurrentPage();
const totalPage = gridApi.paginationGetTotalPages();
const totalResults = gridApi.paginationGetRowCount();
const pageSize = gridApi.paginationGetPageSize();
const startResult = currentPage * pageSize + 1;
const endResult = Math.min(startResult + pageSize - 1, totalResults);
console.log();
console.log("Page size:", pageSize);
console.log("Current page:", currentPage);
console.log("Total pages:", totalPage);
console.log("Total results:", totalResults);
console.log("Start-end:", startResult, endResult);
console.log("Number of rows in this page:", endResult - startResult + 1);
};
实例
下面的实例使用 React,但将该代码转换为 angular
应该很简单
我正在使用带分页的 aggrid(客户端)。
我需要获取当前页面中存在的行数。
当我使用下面的 api 时,它总是给我所有页面中存在的所有行的计数。
gridApi.paginationGetRowCount()
gridApi.getDisplayedRowCount()
gridApi.paginationProxy.masterRowCount
您需要的是GridApi.paginationGetPageSize()
。
GridApi.paginationGetRowCount()
returns 所有页面的总行数。GridApi.getDisplayedRowCount()
returns 所有页面的总行数,加上所有展开的行(使用 Row Grouping or Master Detail 时)。GridApi.paginationProxy
是私有的 属性,不应使用。
如果要获取当前页的行数。您可以自己计算该页面的 startResult
和 endResult
。该页的行数为 endResult
- startResult
+ 1
const printPagination = () => {
const currentPage = gridApi.paginationGetCurrentPage();
const totalPage = gridApi.paginationGetTotalPages();
const totalResults = gridApi.paginationGetRowCount();
const pageSize = gridApi.paginationGetPageSize();
const startResult = currentPage * pageSize + 1;
const endResult = Math.min(startResult + pageSize - 1, totalResults);
console.log();
console.log("Page size:", pageSize);
console.log("Current page:", currentPage);
console.log("Total pages:", totalPage);
console.log("Total results:", totalResults);
console.log("Start-end:", startResult, endResult);
console.log("Number of rows in this page:", endResult - startResult + 1);
};
实例
下面的实例使用 React,但将该代码转换为 angular
应该很简单