Skip to content

VTable API 文档

展示 VTable 组件的 API 文档。

状态

支持双向绑定,用于控制表格内部状态

状态名说明类型默认值
defaultFilter筛选状态VTableColumnFiltersState[]
defaultSort排序状态VTableSortingState[]
defaultPagination分页状态VTablePaginationState{ pageIndex: 1, pageSize: 20 }
defaultExpanded展开状态VTableExpandedState{}
defaultSelection选择状态VTableSelectionState{}
defaultColumnPinning列固定状态VTableColumnPinningState{}
defaultColumnSizing列宽状态VTableColumnSizingState{}

属性

属性名说明类型默认值
data表格数据源TData[][]
columns表格列配置VTableColumn[][]
rowHeight表格行高(建议设置,优化滚动性能)number-
rowKey行唯一标识字段或函数string | number | (row: TData) => string 或 number-
loading是否处于加载状态booleanfalse
fixedHeader是否固定表头booleantrue
enableSortingRemoval是否允许取消排序booleantrue
bordered是否显示边框booleanfalse
rowSelectionConfig选择行功能配置VTableRowSelectionConfig<TData>详情
loadMoreConfig加载更多配置VTableLoadMoreConfig详情
paginationConfig分页器配置VTablePaginationConfig详情
treeConfig树形结构配置VTableTreeConfig详情
enableExpandRow是否启用展开行功能booleanfalse
enableRowHover是否启用行 hover 高亮booleantrue
adaptiveColumnWidth自适应列宽的最小列宽number120
defaultExpandAllRows默认展开所有行(仅初始化生效)booleanfalse
columnResizeMode列宽调整模式'onChange' | 'onEnd''onChange'
fixedFooter是否固定表尾booleanfalse
themeConfig自定义主题配置(可覆盖默认主题)VTableThemeConfig{}
defaultCheckboxColumnWidth默认 checkbox 列宽number40
defaultExpandColumnWidth默认展开列宽number42
customRowAttributes自定义数据行属性(row, rowIndex) => HTMLAttributes() => ({})
customHeaderCellAttributes自定义表头单元格属性(column, colIndex) => ThHTMLAttributes() => ({})
customCellAttributes自定义表体单元格属性(支持合并单元格)(row, column, rowIndex, colIndex) => TdHTMLAttributesnull() => ({})
maxTableWidth表格容器最大宽度(max-content:表格宽度根据内容自适应,内容有多长,表格就有多宽,未设置:表格宽度 100%,如果列内容超出自己的列宽会自动换行,已设置:容器超过最大宽度,出现横向滚动条,列内容会自动换行)string | number | 'max-content'undefined
summaryConfig汇总行配置VTableSummaryConfig详情
contextMenuConfig右键菜单配置VTableContextMenuConfig详情

事件

事件名说明回调参数
onTableChange表格状态变化时触发(分页、排序、筛选)(state: VTableChangeState) => void
onScrollToBottom滚动到底部时触发() => void
onExpandedRowsChange展开行变化时触发(state: VTableExpandedState) => void
onColumnSizingChange列宽调整时触发(state: VTableColumnSizingState) => void
onExpand点击展开图标触发(expanded: boolean, row: TData) => void

插槽

插槽名说明参数
customHeader自定义整个表头{ columns, table }
bodyCell自定义单元格内容{ columnKey, column, row, rowIndex, isEditingMode }
headerCell自定义表头单元格{ columnKey, column }
customFilterIcon自定义筛选图标{ columnKey, filtered, column }
customFilterDropdown自定义筛选下拉框{ confirm, reset, setFilterValue, column, filterModelValue }
expandedRowRender自定义展开行内容{ row }
customPopover自定义 Popover{ open, onOpenChange, trigger, content }
customPagination自定义分页组件{ pageSize, pageIndex, total, onPageChange }
customCheckbox自定义复选框{ checked, disabled, indeterminate, onCheckedChange }
customEmpty自定义空状态-
customLoadingIcon自定义加载图标-
customLoadNoMore自定义加载完成提示-
customFooter自定义表尾-
customExpandIcon自定义展开图标{ expand, onExpandChange }
customSorterIcon自定义排序图标{ sort }
summaryCell自定义汇总单元格{ columnKey, column, summaryValue }
customContextMenu自定义右键菜单{ context, close }

方法

通过 ref 调用组件实例方法

方法名说明参数返回值
scrollToIndex滚动到指定行索引(index: number, behavior?: ScrollBehavior)void
tanstackTable获取 TanStack Table 实例-Table
setEditingState设置编辑状态(1. columnKey 为空,则为行编辑 2. columnKey 不为空,则为单元格编辑 3. rowId 传 null,清除编辑状态)(rowId: string | number | null, columnKey?: string | null) => voidvoid

最后更新时间: