Skip to content

Props

XTableProps<T> 继承自 Partial<TableProps<T>>(Element Plus 原生表格属性全部透传),并新增以下字段:

属性类型默认说明
columnsColumnConfig<T>[]必填列配置
dataT[][]静态数据(与 fetchFn 二选一)
fetchFn(params) => Promise<{ data, total }>-远程数据获取函数
initialQueryParamsRecord<string, any>{}初始查询参数
paginationboolean | PaginationConfigfalse分页器配置;true 用默认值,对象则与默认值合并
emptyTextstring'暂无数据'空数据时的 el-empty 描述文字
emptySearchTextstring'暂无查找的数据'远程模式下「搜索为空」时的 el-empty 描述文字

其他 EP el-table 原生属性(border / stripe / height / row-key / default-expand-all / show-header ...)可直接写在 <XTable> 上。

PaginationConfig

PaginationConfig 等价于 Partial<el-pagination 的 PaginationProps>,默认值:

ts
{
  pageSize: 10,
  pageSizes: [10, 20, 50, 100],
  layout: 'total, sizes, prev, pager, next, jumper',
  background: true,
  hideOnSinglePage: false,
}

ColumnConfig 列配置

ColumnConfig<T> 继承自 Partial<TableColumnCtx<T>>(EP 列属性全部透传),并扩展以下字段:

字段类型说明
propstring必填,对应 el-table-columnprop
labelstring必填,列标题
type'selection' | 'index' | 'expand'EP 原生列类型;不传时由 XTable 渲染单元格
childrenColumnConfig<T>[]子列,启用多级表头
componentTypestring单元格渲染组件名(如 'el-tag' / 自定义注册名)
componentPropsRecord<string, any> | ((row, $index) => Record<string, any>)组件 props;函数按行动态计算
componentEventsRecord<string, (...args) => void>组件事件
slotNamestring单元格自定义插槽名(type: 'expand' 时为展开行插槽名,默认 'expand'
headerSlotNamestring表头自定义插槽名
extraSlotsRecord<string, string>透传 EP 原生列插槽(key=EP 插槽名,value=父组件插槽名)

其他 EP el-table-column 原生属性(width / minWidth / align / fixed / sortable / formatter / filters / filterMethod ...)可写在列配置中。

Released under the MIT License.