Skip to content

useExTable

useExTable 是一个进阶扩展 Hook,通过统一的声明式配置组合 ElTableElFormElPagination

它适用于中后台列表页场景,可在同一配置入口下完成表格展示、条件检索与分页联动,减少页面样板代码并提升可维护性。

基础用法

配置 columnsdata 以及 pagination 即可生成带分页的表格。

  • 1
  • 2

搜索表单

通过 form 配置项,可以快速集成搜索表单。

Approved by
Activity zone
Activity zone
  • 1

自定义数据映射

当后端返回的数据结构不是默认的 { result: [], total: 0 } 时,可以通过 pagination.props 进行映射。

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 20

API

Options

参数说明类型默认值
data表格数据,可以是数组或包含结果及总数的对象T[] | Recordable-
columns表格列配置TableColumn<T>[][]
form表单配置项,参考 useForm 的 optionsFormOptions-
pagination分页配置项,参数参考 ElPagination 的 propsPaginationOptions-

Controller

方法说明参数
setState更新 ExTable 的整体状态(state: Partial<ExTableOptions>) => void
setData更新表格数据(data: ExTableData) => void
setModel更新表单模型数据(model: Recordable) => void
getModel获取当前的表单数据() => Recordable
setItems更新表单项配置(items: FormItem[]) => void
setColumns更新表格列配置(columns: TableColumn[]) => void
getData获取当前表格渲染的数组数据() => T[]
getCurrentPage获取当前页码() => number