Table 多功能表格


  • 自定义样式
  • 单列多列排序
  • 自定义排序
  • 服务端排序
  • 固定表头、固定列

使用指南

在 Taro 文件中引入组件

import { ZoTable } from '@lylb/tzo-ui';

组件依赖的样式文件(仅按需引用时需要)

@import '~@lylb/tzo-ui/dist/style/components/table.scss';

一般用法

import Taro from '@tarojs/taro';
import { ZoNavBar } from '@lylb/tzo-ui';
export default class Index extends Taro.Component {
constructor() {
super(...arguments);
this.state = {
dataSource: [
{
username: '小红',
telephone: '123',
},
{
username: '小明',
telephone: '456',
},
],
columns: [
{
title: '用户名',
dataIndex: 'username',
},
{
title: '手机号',
dataIndex: 'telephone',
},
],
};
}
render() {
const { columns, dataSource } = this.state;
return (
<ZoTable
columns={columns}
dataSource={dataSource}
// ...你的配置
/>
);
}
}

参数说明

参数描述类型必传默认值
columns表格列的配置描述,详见下方IColumns[][]
dataSource数据源any[][]
rowKey表格行 key 的取值string
className最外层包裹节点 css 类名string
style最外层包裹节点内联样式object
colStyle单元格统一样式object
colClassName单元格统一类名string
rowStyle行统一样式object
rowClassName行统一 css 类名string
titleStyle统一设置表头样式object
titleClassName统一设置表头单元格 css 类名string
loading是否加载中boolean
onChange表格数据变化钩子(dataSource: any[]) => void
multipleSort是否开启多列排序booleanfalse
scroll表格是否可滚动,也可以指定滚动区域的宽、高{ x?: number | string | boolean, y?: number | string | boolean }

column

表格列的配置描述,是 columns 中的一项:

参数描述类型必传默认值
title标题string | JSX.Element
dataIndex列数据在数据项中对应的路径string
keyReact 需要的 key,如果已经设置了唯一的 dataIndex,可以忽略这个属性string
align设置该列文本对齐方式'left' | 'right' | 'center''center'
style该列单元格内联样式object
titleStyle该列表头内联样式object
className该列单元格 css 类名string
titleClassName设置该列表头单元格 css 类名string
render渲染函数(text?: any, record?: AnyOpt, index?: number) => JSX.Element | string
width列宽,单位 px,默认 100number100
sort表头是否显示排序按钮boolean
sortOrder排序的受控属性SortOrder
sorter自定义排序函数,相当于 Array.sort 的 compareFunction,需要服务端排序可设为 trueCompareFn | boolean
sortLevel多列排序优先级number0
onSort点击排序按钮钩子,常用于服务端排序(sortOrder: SortOrder) => void
fixed固定列'left' | 'right'
expandable该列是否启用点击展开收起功能,默认 truebooleantrue
TZo UI10:24