UNPKG

2.21 kBTypeScriptView Raw
1import { VXEComponent } from './component'
2import { VxeTableDataRow } from './table'
3import { VxeColumnPropTypes, VxeColumnSlotTypes } from './column'
4
5/* eslint-disable no-use-before-define */
6
7/**
8 * 组件 - 表格分组列
9 * @example import { VxeColgroup } from 'vxe-table'
10 */
11export const VxeColgroup: VXEComponent<VxeColgroupProps, VxeColgroupEventProps, VxeColgroupSlots<any>>
12/**
13 * 组件 - 表格分组列
14 */
15export const Colgroup: typeof VxeColgroup
16
17export type VxeColgroupProps = {
18 /**
19 * 渲染类型
20 */
21 type?: VxeColumnPropTypes.Type
22 /**
23 * 列字段名
24 */
25 field?: VxeColumnPropTypes.Field
26 /**
27 * 列标题
28 */
29 title?: VxeColumnPropTypes.Title
30 /**
31 * 列宽度
32 */
33 width?: VxeColumnPropTypes.Width
34 /**
35 * 列最小宽度,把剩余宽度按比例分配
36 */
37 minWidth?: VxeColumnPropTypes.MinWidth
38 /**
39 * 是否允许拖动列宽调整大小
40 */
41 resizable?: VxeColumnPropTypes.Resizable
42 /**
43 * 将列固定在左侧或者右侧
44 */
45 fixed?: VxeColumnPropTypes.Fixed
46 /**
47 * 列对其方式
48 */
49 align?: VxeColumnPropTypes.Align
50 /**
51 * 表头对齐方式
52 */
53 headerAlign?: VxeColumnPropTypes.HeaderAlign
54 /**
55 * 当内容过长时显示为省略号
56 */
57 showOverflow?: VxeColumnPropTypes.ShowOverflow
58 /**
59 * 当表头内容过长时显示为省略号
60 */
61 showHeaderOverflow?: VxeColumnPropTypes.ShowHeaderOverflow
62 /**
63 * 给单元格附加 className
64 */
65 className?: VxeColumnPropTypes.ClassName
66 /**
67 * 给表头单元格附加 className
68 */
69 headerClassName?: VxeColumnPropTypes.HeaderClassName
70 /**
71 * 是否可视
72 */
73 visible?: VxeColumnPropTypes.Visible
74 /**
75 * 额外的参数
76 */
77 params?: VxeColumnPropTypes.Params
78}
79
80export type VxeColgroupEventProps = {
81 //
82}
83
84export interface VxeColgroupSlots<D = VxeTableDataRow> {
85 /**
86 * 自定义表头内容的模板
87 */
88 header: (params: VxeColumnSlotTypes.HeaderSlotParams<D>) => any
89 /**
90 * 只对 type=checkbox,radio 有效,自定义标题模板
91 */
92 title: (params: VxeColumnSlotTypes.HeaderSlotParams<D>) => any
93}