项目正在快速迭代中,API 与视觉细节可能随版本调整,请勿用于生产环境。
仅桌面端保证样式

DataTable 数据表格 ​

移动端:宽表格在触屏转译为卡片列表,参见 移动端 · 数据展示。

CRUD 场景的表格封装:工具栏(标题 + 计数角标 + 操作区)、columns 配置式列、内置分页与加载遮罩,基于 EbTable 并透传其实例方法。

基础用法 ​

订单列表 共 120 条
共 120 条
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 12

多选与操作列 ​

selectable 打开多选列并 emit selection-change;show-index 打开序号列(宽度由 index-width 控制)。operations 插槽渲染操作列,作用域为 { row, $index, column },列头文案与宽度用 operations-label / operations-width 调整。

批量操作
共 0 条
  • 1

已选 0 行

插槽列与加载态 ​

列配置 slot: 'status' 后由同名插槽渲染单元格(省略时默认按 prop 名查找插槽,作用域 { row, $index, column });loading 时表格覆盖旋转遮罩,适合包裹请求过程。

状态列
共 0 条
  • 1

双行单元格 ​

列配置 stack: (row) => 副行文本 即可在单元格内渲染主行加粗 + 副行浅灰省略(等价于内置 EbCellStack)。

服务端分页 ​

page / pageSize 受控 + total 驱动分页条;翻页时组件先 emit update:page / update:pageSize,再 emit page-change,在回调里按新页码重新拉取数据即可。

分页 共 23 条
共 23 条
  • 1
  • 2
  • 3

第 1 页,每页 10 条

撑满剩余空间 ​

fit 打开后组件按 flex 布局占满父容器的剩余高度,实测表格区高度后表格内部滚动,工具栏与分页常驻可视区——需要父链为 flex column 或有确定高度;与 virtual 组合即可承载万级数据的满屏表格。整页级封装(页头 + 查询区 + 工具栏 + 表格分页联动)见 TablePage 表格页。

API ​

DataTable Props

参数说明类型默认值
data表格数据array[]
columns列配置Column[][]
title工具栏标题string
showTotal是否显示计数角标(total > 0 时)booleantrue
loading加载态(表格遮罩)booleanfalse
selectable显示多选列booleanfalse
showIndex显示序号列booleanfalse
indexWidth序号列宽度number | string56
operationsLabel / operationsWidth操作列标题 / 宽度string / number操作 / —
operationsFixed操作列固定方向boolean | stringright
page / pageSize分页受控number1 / 10
total总条数(计数角标与分页)number0
pageSizes每页条数选项number[][10, 20, 50, 100]
paginationLayout分页条布局项stringtotal, sizes, prev, pager, next
showPagination是否显示分页条booleantrue
fit高度自适应:撑满 flex 父容器剩余空间,实测高度写入表格并内部滚动(与 tableAttrs.height 同传时 fit 优先)booleanfalse
tableAttrs透传 EbTable 其余 props(border/stripe/height 等)object{}

Column

参数说明类型默认值
prop字段名string—
label列标题string
width / minWidth列宽number | string—
fixed固定列boolean | stringfalse
sortable可排序booleanfalse
align对齐left | center | rightleft
showOverflowTooltip超出省略并悬浮显示完整内容booleantrue
slot自定义单元格插槽名(缺省用 prop 名)string—
stack双行单元格副行取值函数(row) => string—
editable行内编辑:点击单元格进入编辑,Enter / 失焦提交、Esc 取消(配置 slot / stack 的列不生效)booleanfalse

Slots

参数说明类型默认值
toolbar工具栏右侧操作区——
operations操作列内容,作用域 { row, $index, column }——
col.slot 或 col.prop列内容插槽,作用域 { row, $index, column }——
empty空数据占位内容——

Events

参数说明类型默认值
page-change页码或每页条数变化({ page, pageSize }) => void—
update:page / update:pageSize分页受控更新(n: number) => void—
selection-change多选项变化(rows) => void—
sort-change排序变化(e) => void—
row-click行点击(e) => void—
cell-click单元格点击(e) => void—
cell-change行内编辑提交(editable 列,值有变化时触发)({ row, prop, value, oldValue, $index }) => void—

Methods

参数说明类型默认值
clearSelection清空多选() => void—
toggleRowSelection切换行选中(row, selected?) => void—
toggleAllSelection切换全选() => void—
sort程序化排序(prop, order) => void—
clearSort清空排序状态() => void—
tableRefEbTable 实例引用(可调用其全部方法)Ref—