stk-table-vue 0.2.0 → 0.2.1

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
@@ -1,37 +1,41 @@
1
1
  # StkTable (Sticky Table)
2
2
 
3
3
  Vue3 简易虚拟滚动表格。用于实时数据展示,新数据行高亮渐暗动效。
4
- js体积(未压缩46kb)
5
4
 
5
+ Vue2.7支持引入源码(**ts**)使用。
6
+
7
+ ## Bug TODO:
8
+ * [] props.dataSource 为 shallowRef 时,高亮行不生效。(2024.02.21)
6
9
  ## Feature TODO:
7
10
  * [x] 高亮行,单元格。
8
- * [x] 横向虚拟滚动。
11
+ * [x] 虚拟滚动。
12
+ - [x] 纵向。
13
+ - [x] 横向(必须设置列宽)。
9
14
  * [x] 列固定。
15
+ - [x] 固定列阴影。
16
+ - [x] 多级表头固定列阴影。
17
+ - [] sticky column 动态计算阴影位置。
18
+ * [] 列筛选。
19
+ * [x] 斑马纹。
20
+ - [] 虚拟滚动斑马纹。
10
21
  * [x] 表头拖动更改顺序。
11
- * [x] 表头列宽拖动调整宽度。
22
+ * [x] 表头拖动调整列宽。
12
23
  * [x] 排序
13
- - [x] 基本表头点击排序
24
+ - [x] 基本表头点击排序。
14
25
  - [] 支持配置 `null` | `undefined` 永远排最后。
15
26
  - [] 支持配置 string 使用 `String.prototype.localCompare` 排序。
16
27
  * 多级表头。
17
28
  - [x] 支持最多`2级`表头。
18
- - [x] 支持更多级表头
19
- - [] 多级表头border-left 问题。
20
- - [] 多级表头固定列横向滚动
29
+ - [x] 支持更多级表头。
21
30
  - [] 横向虚拟滚动。
22
31
  * [x] 支持table-layout: fixed 配置。
23
32
  * 鼠标悬浮在表格上,键盘滚动虚拟表格。
24
33
  - [x] 键盘 `ArrowUp`/`ArrowDown`/`ArrowLeft`/`ArrowRight` 按键支持。
25
34
  - [x] 键盘 `PageUp`/ `PageDown` 按键支持。
26
- * [x] 斑马纹。
27
- * [x] 列固定阴影。
28
- - [] 多级表头固定列阴影。
29
- - [] sticky column 动态计算阴影位置。
30
35
  * [] 不传row-key 时,自动按序号生成id。
31
- * [] 列筛选。
32
36
  * [] 非虚拟滚动时,大数据分批加载。
33
- * [x] vue2支持。
34
- - `props.optimizeVue2Scroll` 优化vue2虚拟滚动流畅度。
37
+ * [x] vue2.7支持(引入源码使用)。
38
+ - [x] `props.optimizeVue2Scroll` 优化vue2虚拟滚动流畅度。
35
39
 
36
40
 
37
41
  ## Usage
@@ -53,13 +57,39 @@ stkTable.value.setHighlightDimCell(rowId, colId) // highlight cell
53
57
 
54
58
  ```
55
59
 
56
- ### Vue2 Usage
57
- vue2 支持源码引入使用。依赖`less`。
60
+ ### Vue2.7 Usage
61
+ vue2.7 支持引入源码使用。依赖`less`。
62
+ ```html
63
+ <script>
64
+ import { StkTable } from 'stk-table-vue/src/StkTable/index';
65
+ </script>
66
+ ```
67
+ 不要less的话
58
68
  ```html
59
69
  <script>
60
- import { StkTable } from 'stk-table-vue/src/StkTable/index'
70
+ import { StkTable } from 'stk-table-vue/src/StkTable/StkTable.vue';
71
+ import 'stk-table-vue/lib/style.css';
61
72
  </script>
62
73
  ```
74
+ #### webpack TS 配置参考
75
+ ##### webpack.config.js
76
+ ```js
77
+ rules:[{
78
+ test: /\.ts$/,
79
+ loader:'swc-loader'
80
+ }]
81
+ ```
82
+ ##### .swcrc
83
+ ```json
84
+ {
85
+ "jsc":{
86
+ "parser":{
87
+ "syntax":"typescript",
88
+ }
89
+ }
90
+ }
91
+ ```
92
+
63
93
 
64
94
 
65
95
  ## Notice
@@ -115,6 +145,8 @@ export type StkProps = {
115
145
  showTrHoverClass?: boolean;
116
146
  /** 表头是否可拖动 */
117
147
  headerDrag?: boolean;
148
+ /** 表头是否可拖动。支持回调函数。 */
149
+ headerDrag?: boolean | ((col: StkTableColumn<DT>) => boolean);
118
150
  /**
119
151
  * 给行附加className<br>
120
152
  * FIXME: 是否需要优化,因为不传此prop会使表格行一直执行空函数,是否有影响
@@ -238,6 +270,8 @@ defineExpose({
238
270
  setHighlightDimRow,
239
271
  /** 表格排序列dataIndex */
240
272
  sortCol,
273
+ /** 获取当前排序状态 */
274
+ getSortColumns,
241
275
  /** 设置排序 */
242
276
  setSorter,
243
277
  /** 重置排序 */