关键 API:
| API | 说明 |
|---|---|
getSortedRowModel() |
启用排序功能的行模型 |
column.getCanSort() |
判断列是否可排序 |
column.getIsSorted() |
获取当前排序方向 ("asc" / "desc" / false) |
column.getToggleSortingHandler() |
获取切换排序的点击处理函数 |
filter-column.tsx - 筛选 UI 组件(独立模块)
| API | 说明 |
|---|---|
getFilteredRowModel() |
启用筛选功能的行模型 |
getFacetedUniqueValues() |
获取列的所有唯一值 |
column.getCanFilter() |
判断列是否可筛选 |
column.getFilterValue() |
获取当前筛选值 |
column.setFilterValue() |
设置筛选值 |
代码分离 - 筛选 UI 独立文件,不入侵核心
Portal 渲染 - 弹窗不受表格 overflow 影响
自动获取选项 - 从数据中自动提取唯一值
零配置使用 - 只需 enableColumnFilter: true
types.ts)添加分页相关的 Props:
data-table.tsx)导入分页相关依赖:
PaginationState 类型getPaginationRowModel 函数添加分页状态:
配置 useReactTable:
state 中添加 paginationonPaginationChange: setPaginationgetPaginationRowModel: getPaginationRowModel()引入分页组件:
pagination.tsx)包含:
<select>)styles.css)新增样式类:
.pagination - 分页容器布局.pagination-info - 信息显示区.pagination-size - 条数选择器.pagination-controls - 翻页按钮组.pagination-btn - 按钮样式(含 hover/disabled 状态)index.tsx)