Skip to content

Table 表格

用于展示多条结构化数据。

基础用法

基础的表格展示用法。

fyo-table 元素中注入 data 对象数组后,在 fyo-table-column 中用 prop 属性来对应对象中的键名即可填入数据,用 label 属性来定义表格的列名。

带斑马纹表格

使用带斑马纹的表格,可以更容易区分出不同行的数据。

stripe 属性可以创建带斑马纹的表格。

带边框表格

默认情况下,Table 组件是不带边框的,如果需要,可以使用 border 属性,它会带有纵向边框。

固定表头

纵向内容过多时,可选择固定表头。

只要在 fyo-table 元素中定义了 height 属性,即可实现固定表头的表格,而不需要额外的代码。

多选

选择多行数据。

实现多选非常简单: 手动添加一个 fyo-table-column,设 type 属性为 selection 即可。

排序

对表格进行排序。

在列中设置 sortable 属性即可实现以该列为基准的排序,接受一个 Boolean,默认为 false

自定义列模板

自定义列的显示内容,可组合其他组件使用。

通过 default 插槽可以获取到 row, column, $index 的数据,来自定义表格列的内容。

Table 属性

属性名说明类型默认值
data显示的数据array[]
stripe是否为斑马纹 tablebooleanfalse
border是否带有纵向边框booleanfalse
sizeTable 的尺寸stringdefault
fit列的宽度是否自撑开booleantrue
show-header是否显示表头booleantrue
highlight-current-row是否要高亮当前行booleanfalse
empty-text空数据时显示的文本内容stringNo Data
heightTable 的高度,默认为自动高度。如果 height 为 number 类型,单位 px;如果 height 为 string 类型,则这个高度会设置为 Table 的 style.height 的值,Table 的高度会受控于外部样式。string / number
max-heightTable 的最大高度。合法的值为数字或者单位为 px 的高度。string / number
row-class-name行的 className 的回调方法,也可以使用字符串为所有行设置一个固定的 className。Function({row, rowIndex}) / String

Table 事件

事件名说明参数
selection-change当选择项发生变化时会触发该事件selection
sort-change当表格的排序条件发生变化的时候会触发该事件'{ column, prop, order }'
row-click当某一行被点击时会触发该事件row, column, event
current-change当表格的当前行发生变化的时候会触发该事件currentRow, oldCurrentRow

TableColumn 属性

属性名说明类型默认值
label显示的标题string
prop对应列内容的字段名string
width对应列的宽度string / number
min-width对应列的最小宽度string / number
align对齐方式stringleft
header-align表头对齐方式string
type对应列的类型。如果设置了 selection 则显示多选框;如果设置了 index 则显示该行的索引(从 1 开始计算)string
sortable对应列是否可以排序booleanfalse

Table Slot

插槽名说明
default默认插槽,用于放置 Table-Column
empty当数据为空时自定义的内容

TableColumn Slot

插槽名说明
default自定义列的内容,参数为 '{ row, column, $index }'
header自定义表头的内容,参数为 '{ column, $index }'