stk-table-vue 0.0.1-beta.9 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -8,12 +8,21 @@ js体积(未压缩41kb)
8
8
  * [x] 横向虚拟滚动。
9
9
  * [x] 列固定。
10
10
  * [x] 表头拖动更改顺序。
11
- * [x] 表头列宽拖动。
12
- * [x] 多级表头。(不支持横向虚拟滚动)
11
+ * [x] 表头列宽拖动调整宽度。
12
+ * 多级表头。
13
+ - [x] 支持最多`2级`表头。
14
+ - [x] 支持更多级表头
15
+ - [] 多级表头固定列横向滚动
16
+ - [] 横向虚拟滚动。
13
17
  * [x] 支持table-layout: fixed 配置。
14
- * [x] 鼠标悬浮在表格上,键盘上下左右滚动虚拟表格
15
- * [] 列固定阴影
16
- * [] 不传row-key 时,自动按序号生成id
18
+ * 鼠标悬浮在表格上,键盘滚动虚拟表格。
19
+ - [x] 键盘 `ArrowUp`/`ArrowDown`/`ArrowLeft`/`ArrowRight` 按键支持。
20
+ - [] 键盘 `PageUp`/ `PageDown` 按键支持。
21
+ * [x] 斑马纹。
22
+ * [] 列固定阴影。
23
+ * [] 不传row-key 时,自动按序号生成id。
24
+ * [] 列筛选。
25
+ * [] 非虚拟滚动时,大数据分批加载。
17
26
 
18
27
  ## Usage
19
28
  > npm install stk-table-vue
@@ -24,8 +33,8 @@ import { StkTable } from 'stk-table-vue'
24
33
  import { ref } from 'vue'
25
34
  const stkTable = ref<InstanceType<typeof StkTable>>();
26
35
  // highlight
27
- // stkTable.value.setHighlightDimRow([rowId])
28
- // stkTable.value.setHighlightDimCell(rowId,colId)
36
+ stkTable.value.setHighlightDimRow([rowId]);// highlight row
37
+ stkTable.value.setHighlightDimCell(rowId, colId) // highlight cell
29
38
  </script>
30
39
 
31
40
  <template>
@@ -36,70 +45,78 @@ const stkTable = ref<InstanceType<typeof StkTable>>();
36
45
  ## API
37
46
  ### StkTable Component Props
38
47
  ```ts
39
- export type StkProps = Partial<{
40
- width: string;
41
- /** 最小表格宽度 */
42
- minWidth: string;
43
- /** 表格最大宽度*/
44
- maxWidth: string;
45
- /** 是否使用 table-layout:fixed */
46
- fixedMode: boolean;
47
- /** 是否隐藏表头 */
48
- headless: boolean;
49
- /** 主题,亮、暗 */
50
- theme: 'light' | 'dark';
51
- /** 虚拟滚动 */
52
- virtual: boolean;
53
- /** x轴虚拟滚动 */
54
- virtualX: boolean;
55
- /** 表格列配置 */
56
- columns: StkTableColumn<any>[];
57
- /** 表格数据源 */
58
- dataSource: any[];
59
- /** 行唯一键 */
60
- rowKey: UniqKey;
61
- /** 列唯一键 */
62
- colKey: UniqKey;
63
- /** 空值展示文字 */
64
- emptyCellText: string;
65
- /** 暂无数据兜底高度是否撑满 */
66
- noDataFull: boolean;
67
- /** 是否展示暂无数据 */
68
- showNoData: boolean;
69
- /** 是否服务端排序,true则不排序数据 */
70
- sortRemote: boolean;
71
- /** 表头是否溢出展示... */
72
- showHeaderOverflow: boolean;
73
- /** 表体溢出是否展示... */
74
- showOverflow: boolean;
75
- /** 是否增加行hover class */
76
- showTrHoverClass: boolean;
77
- /** 表头是否可拖动 */
78
- headerDrag: boolean;
79
- /**
80
- * 给行附加className<br>
81
- * FIXME: 是否需要优化,因为不传此prop会使表格行一直执行空函数,是否有影响
82
- */
83
- rowClassName: (row: any, i: number) => string;
84
- /**
85
- * 列宽是否可拖动<br>
86
- * **不要设置**列minWidth,**必须**设置width<br>
87
- * 列宽拖动时,每一列都必须要有width,且minWidth/maxWidth不生效。table width会变为"fit-content"。
88
- */
89
- colResizable: boolean;
90
- /** 可拖动至最小的列宽 */
91
- colMinWidth: number;
92
- /**
93
- * 单元格分割线。
94
- * 默认横竖都有
95
- * "h" - 仅展示横线
96
- * "v" - 仅展示竖线
97
- * "body-v" - 仅表体展示竖线
98
- */
99
- bordered: boolean | 'h' | 'v' | 'body-v';
100
- /** 自动重新计算虚拟滚动高度宽度。默认true */
101
- autoResize: boolean;
102
- }>;
48
+ export type StkProps = {
49
+ width?: string;
50
+ /** 最小表格宽度 */
51
+ minWidth?: string;
52
+ /** 表格最大宽度*/
53
+ maxWidth?: string;
54
+ /** 斑马线条纹 */
55
+ stripe?: boolean;
56
+ /** 是否使用 table-layout:fixed */
57
+ fixedMode?: boolean;
58
+ /** 是否隐藏表头 */
59
+ headless?: boolean;
60
+ /** 主题,亮、暗 */
61
+ theme?: 'light' | 'dark';
62
+ /** 行高 */
63
+ rowHeight?: number;
64
+ /** 虚拟滚动 */
65
+ virtual?: boolean;
66
+ /** x轴虚拟滚动 */
67
+ virtualX?: boolean;
68
+ /** 表格列配置 */
69
+ columns?: StkTableColumn<any>[];
70
+ /** 表格数据源 */
71
+ dataSource?: any[];
72
+ /** 行唯一键 */
73
+ rowKey?: UniqKey;
74
+ /** 列唯一键 */
75
+ colKey?: UniqKey;
76
+ /** 空值展示文字 */
77
+ emptyCellText?: string;
78
+ /** 暂无数据兜底高度是否撑满 */
79
+ noDataFull?: boolean;
80
+ /** 是否展示暂无数据 */
81
+ showNoData?: boolean;
82
+ /** 是否服务端排序,true则不排序数据 */
83
+ sortRemote?: boolean;
84
+ /** 表头是否溢出展示... */
85
+ showHeaderOverflow?: boolean;
86
+ /** 表体溢出是否展示... */
87
+ showOverflow?: boolean;
88
+ /** 是否增加行hover class */
89
+ showTrHoverClass?: boolean;
90
+ /** 表头是否可拖动 */
91
+ headerDrag?: boolean;
92
+ /**
93
+ * 给行附加className<br>
94
+ * FIXME: 是否需要优化,因为不传此prop会使表格行一直执行空函数,是否有影响
95
+ */
96
+ rowClassName?: (row: any, i: number) => string;
97
+ /**
98
+ * 列宽是否可拖动<br>
99
+ * **不要设置**列minWidth,**必须**设置width<br>
100
+ * 列宽拖动时,每一列都必须要有width,且minWidth/maxWidth不生效。table width会变为"fit-content"。
101
+ */
102
+ colResizable?: boolean;
103
+ /** 可拖动至最小的列宽 */
104
+ colMinWidth?: number;
105
+ /**
106
+ * 单元格分割线。
107
+ * 默认横竖都有
108
+ * "h" - 仅展示横线
109
+ * "v" - 仅展示竖线
110
+ * "body-v" - 仅表体展示竖线
111
+ */
112
+ bordered?: boolean | 'h' | 'v' | 'body-v';
113
+ /**
114
+ * 自动重新计算虚拟滚动高度宽度。默认true
115
+ * [非响应式]
116
+ * 传入方法表示resize后的回调
117
+ */
118
+ autoResize?: boolean | (() => void);
119
+ };
103
120
  ```
104
121
 
105
122
  ### StkTableColumn
@@ -155,6 +172,8 @@ export type StkTableColumn<T extends Record<string, any>> = {
155
172
  :style="{height:props.height}"
156
173
  theme='dark'
157
174
  height='200px'
175
+ bordered="h"
176
+ :row-height="28"
158
177
  :show-overflow="false"
159
178
  :show-header-overflow="false"
160
179
  :sort-remote="false"
@@ -163,6 +182,9 @@ export type StkTableColumn<T extends Record<string, any>> = {
163
182
  virtual
164
183
  virtual-x
165
184
  no-data-full
185
+ col-resizable
186
+ auto-resize
187
+ :col-min-width="10"
166
188
  :headless="false"
167
189
  :data-source="dataSource"
168
190
  @current-change="onCurrentChange"
@@ -1,4 +1,4 @@
1
- import { SortOption, StkTableColumn, UniqKey } from './types/index';
1
+ import { Order, SortOption, StkTableColumn, UniqKey } from './types/index';
2
2
  /**
3
3
  * 选中一行,
4
4
  * @param {string} rowKey
@@ -36,12 +36,16 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
36
36
  minWidth?: string | undefined;
37
37
  /** 表格最大宽度*/
38
38
  maxWidth?: string | undefined;
39
+ /** 斑马线条纹 */
40
+ stripe?: boolean | undefined;
39
41
  /** 是否使用 table-layout:fixed */
40
42
  fixedMode?: boolean | undefined;
41
43
  /** 是否隐藏表头 */
42
44
  headless?: boolean | undefined;
43
45
  /** 主题,亮、暗 */
44
46
  theme?: "light" | "dark" | undefined;
47
+ /** 行高 */
48
+ rowHeight?: number | undefined;
45
49
  /** 虚拟滚动 */
46
50
  virtual?: boolean | undefined;
47
51
  /** x轴虚拟滚动 */
@@ -94,15 +98,18 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
94
98
  /**
95
99
  * 自动重新计算虚拟滚动高度宽度。默认true
96
100
  * [非响应式]
101
+ * 传入方法表示resize后的回调
97
102
  */
98
- autoResize?: boolean | undefined;
103
+ autoResize?: boolean | (() => void) | undefined;
99
104
  }>, {
100
105
  width: string;
101
106
  fixedMode: boolean;
107
+ stripe: boolean;
102
108
  minWidth: string;
103
109
  maxWidth: string;
104
110
  headless: boolean;
105
111
  theme: string;
112
+ rowHeight: number;
106
113
  virtual: boolean;
107
114
  virtualX: boolean;
108
115
  columns: () => never[];
@@ -135,31 +142,39 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
135
142
  scrollTo: typeof scrollTo;
136
143
  getTableData: typeof getTableData;
137
144
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
138
- scroll: (...args: any[]) => void;
139
- "th-drag-start": (...args: any[]) => void;
140
- "col-order-change": (...args: any[]) => void;
141
- "th-drop": (...args: any[]) => void;
142
- columns: (...args: any[]) => void;
143
- "sort-change": (...args: any[]) => void;
144
- "row-click": (...args: any[]) => void;
145
- "current-change": (...args: any[]) => void;
146
- "row-dblclick": (...args: any[]) => void;
147
- "header-row-menu": (...args: any[]) => void;
148
- "row-menu": (...args: any[]) => void;
149
- "cell-click": (...args: any[]) => void;
150
- "header-cell-click": (...args: any[]) => void;
145
+ "sort-change": (col: StkTableColumn<any>, order: Order, data: any[]) => void;
146
+ "row-click": (ev: MouseEvent, row: any) => void;
147
+ "current-change": (ev: MouseEvent | null, row: any) => void;
148
+ "row-dblclick": (ev: MouseEvent, row: any) => void;
149
+ "header-row-menu": (ev: MouseEvent) => void;
150
+ "row-menu": (ev: MouseEvent, row: any) => void;
151
+ "cell-click": (ev: MouseEvent, row: any, col: StkTableColumn<any>) => void;
152
+ "header-cell-click": (ev: MouseEvent, col: StkTableColumn<any>) => void;
153
+ scroll: (ev: Event, data: {
154
+ startIndex: number;
155
+ endIndex: number;
156
+ }) => void;
157
+ "scroll-x": (ev: Event) => void;
158
+ "col-order-change": (dragStartKey: string, targetColKey: string) => void;
159
+ "th-drag-start": (dragStartKey: string) => void;
160
+ "th-drop": (targetColKey: string) => void;
161
+ "update:columns": (cols: StkTableColumn<any>[]) => void;
151
162
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
152
163
  width?: string | undefined;
153
164
  /** 最小表格宽度 */
154
165
  minWidth?: string | undefined;
155
166
  /** 表格最大宽度*/
156
167
  maxWidth?: string | undefined;
168
+ /** 斑马线条纹 */
169
+ stripe?: boolean | undefined;
157
170
  /** 是否使用 table-layout:fixed */
158
171
  fixedMode?: boolean | undefined;
159
172
  /** 是否隐藏表头 */
160
173
  headless?: boolean | undefined;
161
174
  /** 主题,亮、暗 */
162
175
  theme?: "light" | "dark" | undefined;
176
+ /** 行高 */
177
+ rowHeight?: number | undefined;
163
178
  /** 虚拟滚动 */
164
179
  virtual?: boolean | undefined;
165
180
  /** x轴虚拟滚动 */
@@ -212,15 +227,18 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
212
227
  /**
213
228
  * 自动重新计算虚拟滚动高度宽度。默认true
214
229
  * [非响应式]
230
+ * 传入方法表示resize后的回调
215
231
  */
216
- autoResize?: boolean | undefined;
232
+ autoResize?: boolean | (() => void) | undefined;
217
233
  }>, {
218
234
  width: string;
219
235
  fixedMode: boolean;
236
+ stripe: boolean;
220
237
  minWidth: string;
221
238
  maxWidth: string;
222
239
  headless: boolean;
223
240
  theme: string;
241
+ rowHeight: number;
224
242
  virtual: boolean;
225
243
  virtualX: boolean;
226
244
  columns: () => never[];
@@ -241,24 +259,30 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
241
259
  bordered: boolean;
242
260
  autoResize: boolean;
243
261
  }>>> & {
244
- onScroll?: ((...args: any[]) => any) | undefined;
245
- "onTh-drag-start"?: ((...args: any[]) => any) | undefined;
246
- "onCol-order-change"?: ((...args: any[]) => any) | undefined;
247
- "onTh-drop"?: ((...args: any[]) => any) | undefined;
248
- onColumns?: ((...args: any[]) => any) | undefined;
249
- "onSort-change"?: ((...args: any[]) => any) | undefined;
250
- "onRow-click"?: ((...args: any[]) => any) | undefined;
251
- "onCurrent-change"?: ((...args: any[]) => any) | undefined;
252
- "onRow-dblclick"?: ((...args: any[]) => any) | undefined;
253
- "onHeader-row-menu"?: ((...args: any[]) => any) | undefined;
254
- "onRow-menu"?: ((...args: any[]) => any) | undefined;
255
- "onCell-click"?: ((...args: any[]) => any) | undefined;
256
- "onHeader-cell-click"?: ((...args: any[]) => any) | undefined;
262
+ onScroll?: ((ev: Event, data: {
263
+ startIndex: number;
264
+ endIndex: number;
265
+ }) => any) | undefined;
266
+ "onUpdate:columns"?: ((cols: StkTableColumn<any>[]) => any) | undefined;
267
+ "onTh-drag-start"?: ((dragStartKey: string) => any) | undefined;
268
+ "onCol-order-change"?: ((dragStartKey: string, targetColKey: string) => any) | undefined;
269
+ "onTh-drop"?: ((targetColKey: string) => any) | undefined;
270
+ "onSort-change"?: ((col: StkTableColumn<any>, order: Order, data: any[]) => any) | undefined;
271
+ "onRow-click"?: ((ev: MouseEvent, row: any) => any) | undefined;
272
+ "onCurrent-change"?: ((ev: MouseEvent | null, row: any) => any) | undefined;
273
+ "onRow-dblclick"?: ((ev: MouseEvent, row: any) => any) | undefined;
274
+ "onHeader-row-menu"?: ((ev: MouseEvent) => any) | undefined;
275
+ "onRow-menu"?: ((ev: MouseEvent, row: any) => any) | undefined;
276
+ "onCell-click"?: ((ev: MouseEvent, row: any, col: StkTableColumn<any>) => any) | undefined;
277
+ "onHeader-cell-click"?: ((ev: MouseEvent, col: StkTableColumn<any>) => any) | undefined;
278
+ "onScroll-x"?: ((ev: Event) => any) | undefined;
257
279
  }, {
258
280
  width: string;
259
281
  minWidth: string;
260
282
  maxWidth: string;
283
+ rowHeight: number;
261
284
  colKey: UniqKey;
285
+ stripe: boolean;
262
286
  fixedMode: boolean;
263
287
  headless: boolean;
264
288
  theme: "light" | "dark";
@@ -279,7 +303,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
279
303
  colResizable: boolean;
280
304
  colMinWidth: number;
281
305
  bordered: boolean | "h" | "v" | "body-v";
282
- autoResize: boolean;
306
+ autoResize: boolean | (() => void);
283
307
  }, {}>, {
284
308
  tableHeader?(_: {
285
309
  column: StkTableColumn<any>;
@@ -1,18 +1,18 @@
1
- import { Ref } from 'vue';
2
- import { StkTableColumn } from './types';
3
- type Params = {
4
- props: any;
5
- emit: any;
6
- tableContainer: Ref<HTMLElement | undefined>;
7
- tableHeaderLast: Ref<StkTableColumn<any>[]>;
8
- colResizeIndicator: Ref<HTMLElement | undefined>;
9
- colKeyGen: (p: any) => string;
10
- };
11
- /** 列宽拖动 */
12
- export declare function useColResize({ tableContainer, tableHeaderLast, colResizeIndicator, props, emit, colKeyGen }: Params): {
13
- isColResizing: Ref<boolean>;
14
- onThResizeMouseDown: (e: MouseEvent, col: StkTableColumn<any>, isPrev?: boolean) => void;
15
- onThResizeMouseMove: (e: MouseEvent) => void;
16
- onThResizeMouseUp: (e: MouseEvent) => void;
17
- };
18
- export {};
1
+ import { Ref } from 'vue';
2
+ import { StkTableColumn } from './types';
3
+ type Params<DT extends Record<string, any>> = {
4
+ props: any;
5
+ emits: any;
6
+ tableContainer: Ref<HTMLElement | undefined>;
7
+ tableHeaderLast: Ref<StkTableColumn<DT>[]>;
8
+ colResizeIndicator: Ref<HTMLElement | undefined>;
9
+ colKeyGen: (p: any) => string;
10
+ };
11
+ /** 列宽拖动 */
12
+ export declare function useColResize<DT extends Record<string, any>>({ tableContainer, tableHeaderLast, colResizeIndicator, props, emits, colKeyGen, }: Params<DT>): {
13
+ isColResizing: Ref<boolean>;
14
+ onThResizeMouseDown: (e: MouseEvent, col: StkTableColumn<DT>, isPrev?: boolean) => void;
15
+ onThResizeMouseMove: (e: MouseEvent) => void;
16
+ onThResizeMouseUp: (e: MouseEvent) => void;
17
+ };
18
+ export {};
@@ -2,6 +2,7 @@ import { CSSProperties, Ref } from 'vue';
2
2
  import { StkTableColumn } from './types';
3
3
  import { VirtualScrollStore, VirtualScrollXStore } from './useVirtualScroll';
4
4
  type Options = {
5
+ props: any;
5
6
  tableHeaderLast: Ref<StkTableColumn<any>[]>;
6
7
  virtualScroll: Ref<VirtualScrollStore>;
7
8
  virtualScrollX: Ref<VirtualScrollXStore>;
@@ -13,7 +14,7 @@ type Options = {
13
14
  * @param param0
14
15
  * @returns
15
16
  */
16
- export declare function useFixedStyle({ tableHeaderLast, virtualScroll, virtualScrollX, virtualX_on, virtualX_offsetRight }: Options): {
17
- getFixedStyle: (tagType: 1 | 2, col: StkTableColumn<any>) => CSSProperties;
17
+ export declare function useFixedStyle({ props, tableHeaderLast, virtualScroll, virtualScrollX, virtualX_on, virtualX_offsetRight }: Options): {
18
+ getFixedStyle: (tagType: 1 | 2, col: StkTableColumn<any>, depth?: number) => CSSProperties;
18
19
  };
19
20
  export {};
@@ -1,14 +1,14 @@
1
- type Params = {
2
- emit: any;
3
- };
4
- /**
5
- * 列顺序拖动
6
- * @param param0
7
- * @returns
8
- */
9
- export declare function useThDrag({ emit }: Params): {
10
- onThDragStart: (e: MouseEvent) => void;
11
- onThDragOver: (e: MouseEvent) => void;
12
- onThDrop: (e: MouseEvent) => void;
13
- };
14
- export {};
1
+ type Params = {
2
+ emits: any;
3
+ };
4
+ /**
5
+ * 列顺序拖动
6
+ * @param param0
7
+ * @returns
8
+ */
9
+ export declare function useThDrag({ emits }: Params): {
10
+ onThDragStart: (e: MouseEvent) => void;
11
+ onThDragOver: (e: MouseEvent) => void;
12
+ onThDrop: (e: MouseEvent) => void;
13
+ };
14
+ export {};
@@ -1,17 +1,21 @@
1
1
  import { Ref, ShallowRef } from 'vue';
2
2
  import { StkTableColumn } from './types';
3
- type Option = {
3
+ type Option<DT extends Record<string, any>> = {
4
4
  tableContainer: Ref<HTMLElement | undefined>;
5
5
  props: any;
6
- dataSourceCopy: ShallowRef<any[]>;
7
- tableHeaderLast: Ref<StkTableColumn<any>[]>;
6
+ dataSourceCopy: ShallowRef<DT[]>;
7
+ tableHeaderLast: Ref<StkTableColumn<DT>[]>;
8
8
  };
9
9
  /** 暂存纵向虚拟滚动的数据 */
10
10
  export type VirtualScrollStore = {
11
11
  /** 容器高度 */
12
12
  containerHeight: number;
13
+ /** 一页的大小 */
14
+ pageSize: number;
13
15
  /** 数组开始位置 */
14
16
  startIndex: number;
17
+ /** 数组结束位置 */
18
+ endIndex: number;
15
19
  /** 行高 */
16
20
  rowHeight: number;
17
21
  /** 表格定位上边距 */
@@ -37,10 +41,12 @@ export type VirtualScrollXStore = {
37
41
  * @param param0
38
42
  * @returns
39
43
  */
40
- export declare function useVirtualScroll({ tableContainer, props, dataSourceCopy, tableHeaderLast }: Option): {
44
+ export declare function useVirtualScroll<DT extends Record<string, any>>({ tableContainer, props, dataSourceCopy, tableHeaderLast }: Option<DT>): {
41
45
  virtualScroll: Ref<{
42
46
  containerHeight: number;
47
+ pageSize: number;
43
48
  startIndex: number;
49
+ endIndex: number;
44
50
  rowHeight: number;
45
51
  offsetTop: number;
46
52
  scrollTop: number;
@@ -53,10 +59,10 @@ export declare function useVirtualScroll({ tableContainer, props, dataSourceCopy
53
59
  scrollLeft: number;
54
60
  }>;
55
61
  virtual_on: import("vue").ComputedRef<any>;
56
- virtual_dataSourcePart: import("vue").ComputedRef<any[]>;
62
+ virtual_dataSourcePart: import("vue").ComputedRef<DT[]>;
57
63
  virtual_offsetBottom: import("vue").ComputedRef<number>;
58
64
  virtualX_on: import("vue").ComputedRef<any>;
59
- virtualX_columnPart: import("vue").ComputedRef<StkTableColumn<any>[]>;
65
+ virtualX_columnPart: import("vue").ComputedRef<StkTableColumn<DT>[]>;
60
66
  virtualX_offsetRight: import("vue").ComputedRef<number>;
61
67
  initVirtualScroll: (height?: number) => void;
62
68
  initVirtualScrollY: (height?: number) => void;
@@ -1,23 +1,23 @@
1
- import { Order, SortOption, SortState, StkTableColumn } from './types';
2
- /**
3
- * 对有序数组插入新数据
4
- * @param sortState
5
- * @param sortState.dataIndex 排序的列
6
- * @param sortState.order 排序顺序
7
- * @param sortState.sortType 排序方式
8
- * @param newItem 要插入的数据
9
- * @param targetArray 表格数据
10
- */
11
- export declare function insertToOrderedArray<T extends object>(sortState: SortState<keyof T>, newItem: any, targetArray: T[]): T[];
12
- /**
13
- * 表格排序抽离
14
- * 可以在组件外部自己实现表格排序,组件配置remote,使表格不排序。
15
- * 使用者在@sort-change事件中自行更改table props 'dataSource'完成排序。
16
- * TODO: key 唯一值,排序字段相同时,根据唯一值排序。
17
- * @param sortOption 列配置
18
- * @param order 排序方式
19
- * @param dataSource 排序的数组
20
- */
21
- export declare function tableSort(sortOption: SortOption, order: Order, dataSource: any[]): any[];
22
- /** column 的层级 */
23
- export declare function howDeepTheColumn(arr: StkTableColumn<any>[], level?: number): number;
1
+ import { Order, SortOption, SortState, StkTableColumn } from './types';
2
+ /**
3
+ * 对有序数组插入新数据
4
+ * @param sortState
5
+ * @param sortState.dataIndex 排序的列
6
+ * @param sortState.order 排序顺序
7
+ * @param sortState.sortType 排序方式
8
+ * @param newItem 要插入的数据
9
+ * @param targetArray 表格数据
10
+ */
11
+ export declare function insertToOrderedArray<T extends object>(sortState: SortState<keyof T>, newItem: any, targetArray: T[]): T[];
12
+ /**
13
+ * 表格排序抽离
14
+ * 可以在组件外部自己实现表格排序,组件配置remote,使表格不排序。
15
+ * 使用者在@sort-change事件中自行更改table props 'dataSource'完成排序。
16
+ * TODO: key 唯一值,排序字段相同时,根据唯一值排序。
17
+ * @param sortOption 列配置
18
+ * @param order 排序方式
19
+ * @param dataSource 排序的数组
20
+ */
21
+ export declare function tableSort(sortOption: SortOption, order: Order, dataSource: any[]): any[];
22
+ /** 表头column配置的层级 */
23
+ export declare function howDeepTheHeader(arr: StkTableColumn<any>[], level?: number): number;