Pagination
Break large datasets into manageable pages for improved navigation and performance.
Example
Id
Name
Category
Price Retail
Status
1
Oriental Silk Bacon
Home & Garden
351.72
in-stock
2
Gorgeous Gold Fish
Home & Garden
70
in-stock
3
Ergonomic Plastic Cheese
Sports
25.47
backordered
4
Oriental Bronze Shirt
Electronics
659.57
discontinued
5
Fresh Ceramic Sausages
Electronics
1430.55
in-stock
6
Soft Steel Mouse
Sports
221.6
low-stock
7
Ergonomic Steel Mouse
Sports
299.3
in-stock
8
Modern Ceramic Table
Home & Garden
274.36
in-stock
9
Sleek Concrete Car
Clothing
124.56
in-stock
10
Refined Plastic Towels
Electronics
1695.04
in-stock
Per page:
Showing
1
to
10
of 1000 rows
{
"page": 1,
"pageSize": 10,
"pageSizes": [
10,
20,
50,
100
],
"pageCount": 100
}
{#each datagrid.columns.getLeafColumnsInOrder() as column}
{@render LeafHeader(column)}
{/each}
{#each datagrid.rows.getPaginatedRows() as row}
{#if !row.isGroupRow()}
{#each datagrid.columns.getLeafColumnsInOrder() as column}
{@render RenderBodyCell(column, row)}
{/each}
{:else}{/if}
{/each}
Per page:
Showing
{datagrid.features.pagination.pageSize * (datagrid.features.pagination.page - 1) + 1}
to
{Math.min(
datagrid.features.pagination.pageSize * datagrid.features.pagination.page,
(datagrid.cacheManager.rows || []).length
)}
of {(datagrid.cacheManager.rows || []).length} rows
{JSON.stringify(
{
page: datagrid.features.pagination.page,
pageSize: datagrid.features.pagination.pageSize,
pageSizes: datagrid.features.pagination.pageSizes,
pageCount: datagrid.features.pagination.pageCount
},
null,
2
)}
{getCellContent(column, row.original)}
{/snippet}
{#snippet LeafHeader(column: LeafColumn)}
{#if column.isVisible()}
{column.header}