Skip to content

useTable

useTable 通过配置驱动 ElTable,你可以使用列定义数组代替模板中的多层 el-table-column 嵌套,并通过控制器统一管理表格状态。

这种方式在列较多、交互复杂或需要动态切换列配置的场景中更具可维护性。

基础表格

带斑马纹表格

带边框表格

带状态表格

固定表头

固定列

固定列和表头

流体高度

多级表头

单选

多选

排序

筛选

自定义列模板

自定义表头

展开行

switch parent border:
switch child border:
preserve expanded:

State:

City:

Address:

Zip:

Family

No Data

树形数据与懒加载

自定义索引

表格布局

合并列或行

自定义悬浮提示

始终显示悬浮提示

尾部合计行

API

Options

useTable 的配置项继承自 Element Plus ElTable 的 Props,并额外增加以下字段:

  • columns: TableColumn[] —— 核心配置,用于声明表格列。
  • data: T[] —— 表格数据。

TableColumn

属性与 ElTableColumn 的 props 一致,同时额外支持:

字段说明类型
slot默认插槽名string
slots具名插槽配置 (default, header, filterIcon, expand)Record<string, string>
children子列配置 (用于多级表头)TableColumn[]

Controller

方法说明参数
setState动态更新表格整体配置(state: Partial<TableOptions>) => void
setColumns动态更新列定义(columns: TableColumn[]) => void
setData动态更新表格数据(data: T[]) => void
getData获取当前数据快照() => T[]
instance内部 ElTable 实例(可调用排序、选择等原生方法)Ref<TableInstance>