vxe-table 4.23.3 → 4.23.5

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.
Files changed (45) hide show
  1. package/dist/all.esm.js +76 -33
  2. package/dist/style.css +1 -1
  3. package/dist/style.min.css +1 -1
  4. package/es/index.css +1 -1
  5. package/es/index.min.css +1 -1
  6. package/es/style.css +1 -1
  7. package/es/style.min.css +1 -1
  8. package/es/table/module/edit/hook.js +2 -2
  9. package/es/table/src/table.js +72 -29
  10. package/es/table/style.css +30 -11
  11. package/es/table/style.min.css +1 -1
  12. package/es/ui/index.js +1 -1
  13. package/es/ui/src/log.js +1 -1
  14. package/es/vxe-table/style.css +30 -11
  15. package/es/vxe-table/style.min.css +1 -1
  16. package/lib/index.css +1 -1
  17. package/lib/index.min.css +1 -1
  18. package/lib/index.umd.js +25 -21
  19. package/lib/index.umd.min.js +1 -1
  20. package/lib/style.css +1 -1
  21. package/lib/style.min.css +1 -1
  22. package/lib/table/module/edit/hook.js +2 -2
  23. package/lib/table/module/edit/hook.min.js +1 -1
  24. package/lib/table/src/table.js +21 -17
  25. package/lib/table/src/table.min.js +1 -1
  26. package/lib/table/style/style.css +30 -11
  27. package/lib/table/style/style.min.css +1 -1
  28. package/lib/ui/index.js +1 -1
  29. package/lib/ui/index.min.js +1 -1
  30. package/lib/ui/src/log.js +1 -1
  31. package/lib/ui/src/log.min.js +1 -1
  32. package/lib/vxe-table/style/style.css +30 -11
  33. package/lib/vxe-table/style/style.min.css +1 -1
  34. package/package.json +2 -2
  35. package/packages/table/module/edit/hook.ts +2 -2
  36. package/packages/table/src/table.ts +78 -32
  37. package/styles/components/table-module/filter.scss +26 -13
  38. package/styles/components/table.scss +6 -0
  39. package/styles/theme/base.scss +1 -0
  40. /package/es/{iconfont.1792723098707.ttf → iconfont.1792838769925.ttf} +0 -0
  41. /package/es/{iconfont.1792723098707.woff → iconfont.1792838769925.woff} +0 -0
  42. /package/es/{iconfont.1792723098707.woff2 → iconfont.1792838769925.woff2} +0 -0
  43. /package/lib/{iconfont.1792723098707.ttf → iconfont.1792838769925.ttf} +0 -0
  44. /package/lib/{iconfont.1792723098707.woff → iconfont.1792838769925.woff} +0 -0
  45. /package/lib/{iconfont.1792723098707.woff2 → iconfont.1792838769925.woff2} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vxe-table",
3
- "version": "4.23.3",
3
+ "version": "4.23.5",
4
4
  "description": "A PC-end table component based on Vxe UI, supporting copy-paste, data pivot table, and high-performance virtual list table solution.",
5
5
  "scripts": {
6
6
  "update": "npm install --legacy-peer-deps",
@@ -66,7 +66,7 @@
66
66
  "typescript": "~5.9.3",
67
67
  "vue": "3.4.27",
68
68
  "vue-router": "~4.5.1",
69
- "vxe-pc-ui": "4.20.17"
69
+ "vxe-pc-ui": "4.20.19"
70
70
  },
71
71
  "vetur": {
72
72
  "tags": "helper/vetur/tags.json",
@@ -307,7 +307,7 @@ hooks.add('tableEditModule', {
307
307
 
308
308
  reactData.removeRowFlag++
309
309
  reactData.insertRowFlag++
310
- $xeTable.cacheRowMap(false)
310
+ $xeTable.cacheRowMap(false, false)
311
311
  $xeTable.updateScrollYStatus()
312
312
  $xeTable.handleTableData(treeConfig && transform)
313
313
  if (!(treeConfig && transform)) {
@@ -692,7 +692,7 @@ hooks.add('tableEditModule', {
692
692
  reactData.removeRowFlag++
693
693
  reactData.insertRowFlag++
694
694
  reactData.pendingRowFlag++
695
- $xeTable.cacheRowMap(false)
695
+ $xeTable.cacheRowMap(false, false)
696
696
  $xeTable.handleTableData(treeConfig && transform)
697
697
  $xeTable.updateFooter()
698
698
  $xeTable.handleUpdateBodyMerge()
@@ -30,7 +30,7 @@ import '../module/validator/hook'
30
30
  import '../module/custom/hook'
31
31
  import '../render'
32
32
 
33
- import type { VxeTooltipInstance, VxeTabsConstructor, VxeTabsPrivateMethods, ValueOf, VxeComponentSlotType, VxeComponentStyleType, VxeModalConstructor, VxeModalMethods, VxeSplitterConstructor, VxeSplitterMethods } from 'vxe-pc-ui'
33
+ import type { VxeTooltipInstance, VxeTabsConstructor, VxeTabsPrivateMethods, ValueOf, VxeComponentSlotType, VxeComponentStyleType, VxeModalConstructor, VxeModalMethods, VxeSplitterConstructor, VxeSplitterMethods, VxeComponentSizeType } from 'vxe-pc-ui'
34
34
  import type { VxeGridConstructor, VxeGridPrivateMethods, VxeTableConstructor, VxeTablePropTypes, VxeToolbarConstructor, TablePrivateMethods, VxeTablePrivateRef, VxeTablePrivateComputed, VxeTablePrivateMethods, TableMethods, VxeTableMethods, VxeTableDefines, VxeTableEmits, VxeTableProps, VxeColumnPropTypes, VxeTableCustomPanelConstructor } from '../../../types'
35
35
 
36
36
  const { warnLog, errLog } = createComponentLog('table')
@@ -1141,9 +1141,9 @@ export default defineVxeComponent({
1141
1141
  return { toVisibleIndex: 0, visibleSize: 6 }
1142
1142
  }
1143
1143
 
1144
- const calcVarRowHeightConfig = (sizeKey: 'default' | 'medium' | 'small' | 'mini', sizeEl: Element) => {
1144
+ const calcVarRowHeightConfig = (sizeKey: VxeComponentSizeType, sizeEl: Element) => {
1145
1145
  const { rowHeightStore } = reactData
1146
- if (sizeEl && sizeEl.clientHeight) {
1146
+ if (sizeKey && sizeEl && sizeEl.clientHeight) {
1147
1147
  rowHeightStore[sizeKey] = sizeEl.clientHeight
1148
1148
  }
1149
1149
  }
@@ -1780,7 +1780,7 @@ export default defineVxeComponent({
1780
1780
  internalData.tableFullGroupData = groupRest.treeData
1781
1781
  reactData.isRowGroupStatus = true
1782
1782
  reactData.rowGroupList = aggGroupConfs
1783
- $xeTable.cacheRowMap(false)
1783
+ $xeTable.cacheRowMap(false, false)
1784
1784
  }
1785
1785
  // 如果自定义了顺序
1786
1786
  if (isCustomSort && sortData) {
@@ -3341,7 +3341,7 @@ export default defineVxeComponent({
3341
3341
  }
3342
3342
  }
3343
3343
 
3344
- const handleAsyncTreeExpandChilds = (row: any): Promise<void> => {
3344
+ const handleAsyncTreeExpandChilds = (row: any, autoExpand: boolean): Promise<void> => {
3345
3345
  const treeOpts = computeTreeOpts.value
3346
3346
  const checkboxOpts = computeCheckboxOpts.value
3347
3347
  const { transform, loadMethod } = treeOpts
@@ -3367,7 +3367,7 @@ export default defineVxeComponent({
3367
3367
  if (childRecords) {
3368
3368
  return $xeTable.loadTreeChildren(row, childRecords).then(childRows => {
3369
3369
  const { treeExpandedMaps } = internalData
3370
- if (childRows.length && !treeExpandedMaps[rowid]) {
3370
+ if (autoExpand && childRows.length && !treeExpandedMaps[rowid]) {
3371
3371
  treeExpandedMaps[rowid] = row
3372
3372
  }
3373
3373
  reactData.treeExpandedFlag++
@@ -3591,7 +3591,9 @@ export default defineVxeComponent({
3591
3591
  }
3592
3592
  const varEl = refVarElem.value
3593
3593
  if (varEl) {
3594
- const [defEl, mediumEl, smallEl, miniEl] = varEl.children
3594
+ const [dxlargeEl, largeEl, defEl, mediumEl, smallEl, miniEl] = varEl.children
3595
+ calcVarRowHeightConfig('xlarge', dxlargeEl)
3596
+ calcVarRowHeightConfig('large', largeEl)
3595
3597
  calcVarRowHeightConfig('default', defEl)
3596
3598
  calcVarRowHeightConfig('medium', mediumEl)
3597
3599
  calcVarRowHeightConfig('small', smallEl)
@@ -4092,7 +4094,7 @@ export default defineVxeComponent({
4092
4094
  internalData.tableFullTreeData = isRGroup ? [] : treeData
4093
4095
  internalData.tableFullGroupData = isRGroup ? treeData : []
4094
4096
  // 缓存数据
4095
- $xeTable.cacheRowMap(isReset)
4097
+ $xeTable.cacheRowMap(isReset, true)
4096
4098
  // 原始数据
4097
4099
  internalData.tableSynchData = datas
4098
4100
  if (isReset) {
@@ -4574,7 +4576,7 @@ export default defineVxeComponent({
4574
4576
  const isLoad = lazy && row[hasChildField] && !rowRest.treeLoaded && !treeExpandLazyLoadedMaps[rowid]
4575
4577
  // 是否使用懒加载
4576
4578
  if (isLoad) {
4577
- result.push(handleAsyncTreeExpandChilds(row))
4579
+ result.push(handleAsyncTreeExpandChilds(row, true))
4578
4580
  } else {
4579
4581
  if (row[childrenField] && row[childrenField].length) {
4580
4582
  treeExpandedMaps[rowid] = row
@@ -5581,7 +5583,7 @@ export default defineVxeComponent({
5581
5583
  if (reDelFlag) {
5582
5584
  reactData.removeRowFlag++
5583
5585
  $xeTable.updateFooter()
5584
- $xeTable.cacheRowMap(false)
5586
+ $xeTable.cacheRowMap(false, true)
5585
5587
  $xeTable.handleTableData(treeConfig && transform)
5586
5588
  if (!(treeConfig && transform)) {
5587
5589
  $xeTable.updateAfterDataIndex()
@@ -7799,7 +7801,7 @@ export default defineVxeComponent({
7799
7801
  * 重新懒加载树节点,并展开该节点
7800
7802
  * @param {Row} row 行对象
7801
7803
  */
7802
- reloadTreeExpand (row) {
7804
+ reloadTreeExpand (row, autoExpand = true) {
7803
7805
  const { treeExpandLazyLoadedMaps } = internalData
7804
7806
  const treeOpts = computeTreeOpts.value
7805
7807
  const hasChildField = treeOpts.hasChild || treeOpts.hasChildField
@@ -7807,7 +7809,7 @@ export default defineVxeComponent({
7807
7809
  const rowid = getRowid($xeTable, row)
7808
7810
  if (lazy && row[hasChildField] && !treeExpandLazyLoadedMaps[rowid]) {
7809
7811
  return $xeTable.clearTreeExpandLoaded(row).then(() => {
7810
- return handleAsyncTreeExpandChilds(row)
7812
+ return handleAsyncTreeExpandChilds(row, autoExpand)
7811
7813
  }).then(() => {
7812
7814
  if (transform) {
7813
7815
  handleVirtualTreeToList()
@@ -9701,7 +9703,7 @@ export default defineVxeComponent({
9701
9703
  internalData.removeRowMaps = rRowMaps
9702
9704
  internalData.afterFullData = afterFullList
9703
9705
 
9704
- $xeTable.cacheRowMap(false)
9706
+ $xeTable.cacheRowMap(false, false)
9705
9707
  $xeTable.handleTableData(treeConfig && transform)
9706
9708
  $xeTable.updateFooter()
9707
9709
  $xeTable.handleUpdateBodyMerge()
@@ -9926,7 +9928,7 @@ export default defineVxeComponent({
9926
9928
  /**
9927
9929
  * 更新数据行的 Map
9928
9930
  */
9929
- cacheRowMap (isReset) {
9931
+ cacheRowMap (isReset, isReLoaded) {
9930
9932
  const { treeConfig } = props
9931
9933
  const { isRowGroupStatus } = reactData
9932
9934
  const { currKeyField, fullAllDataRowIdData, tableFullData, tableFullTreeData, tableFullGroupData, treeExpandedMaps, rowExpandedMaps, selectCheckboxMaps } = internalData
@@ -9946,8 +9948,10 @@ export default defineVxeComponent({
9946
9948
  fullDataRowIdMaps[rowid] = rowRest
9947
9949
  fullAllDataRowIdMaps[rowid] = rowRest
9948
9950
  }
9949
- rowRest.treeLoaded = false
9950
- rowRest.expandLoaded = false
9951
+ if (isReset || isReLoaded) {
9952
+ rowRest.treeLoaded = false
9953
+ rowRest.expandLoaded = false
9954
+ }
9951
9955
 
9952
9956
  rowRest._seq = rowNum++
9953
9957
  rowRest.row = row
@@ -11781,7 +11785,9 @@ export default defineVxeComponent({
11781
11785
  }
11782
11786
  $xeTable.closeTooltip()
11783
11787
  },
11784
- handleRowDragSwapEvent (evnt, isSyncRow, dragRow, prevDragRow, prevDragPos, prevDragToChild) {
11788
+ handleRowDragSwapEvent (evnt, isSyncRow, dragRow, prevDragRow, prevDragPos, prevDragToChild): Promise<{
11789
+ status: boolean
11790
+ }> {
11785
11791
  const { treeConfig, dragConfig } = props
11786
11792
  const rowDragOpts = computeRowDragOpts.value
11787
11793
  const { afterFullData, tableFullData, fullAllDataRowIdData } = internalData
@@ -11916,7 +11922,6 @@ export default defineVxeComponent({
11916
11922
  if (!status) {
11917
11923
  return errRest
11918
11924
  }
11919
-
11920
11925
  // 如果为树结构
11921
11926
  if (treeConfig) {
11922
11927
  if (transform) {
@@ -11971,7 +11976,7 @@ export default defineVxeComponent({
11971
11976
 
11972
11977
  $xeTable.handleClearStack()
11973
11978
  $xeTable.handleTableData(treeConfig && transform)
11974
- $xeTable.cacheRowMap(false)
11979
+ $xeTable.cacheRowMap(false, false)
11975
11980
  updateScrollYStatus()
11976
11981
  if (!(treeConfig && transform)) {
11977
11982
  $xeTable.updateAfterDataIndex()
@@ -12329,29 +12334,62 @@ export default defineVxeComponent({
12329
12334
  const hasChildField = treeOpts.hasChild || treeOpts.hasChildField
12330
12335
  const { prevDragRow, prevDragPos } = internalData
12331
12336
  const rowDragOpts = computeRowDragOpts.value
12332
- const { isCrossTableDrag } = rowDragOpts
12337
+ const { isCrossDrag, isCrossTableDrag, isAutoExpandToChild, isAutoLazyLoadToChild } = rowDragOpts
12338
+ const childrenField = treeOpts.children || treeOpts.childrenField
12333
12339
  // 跨表拖拽
12334
- if (isCrossTableDrag && crossTableDragRowObj) {
12340
+ if (isCrossTableDrag && (!treeConfig || isCrossDrag) && crossTableDragRowObj) {
12335
12341
  const { $newTable } = crossTableDragRowObj
12336
12342
  if ($newTable && $newTable.xID !== $xeTable.xID) {
12337
12343
  $newTable.handleCrossTableRowDragInsertEvent(evnt)
12338
12344
  return
12339
12345
  }
12340
12346
  }
12341
- if (treeConfig && lazy && prevDragToChild) {
12347
+ if (treeConfig && prevDragToChild) {
12342
12348
  // 懒加载
12343
- const newRowid = getRowid($xeTable, prevDragRow)
12344
- const rowRest = fullAllDataRowIdData[newRowid]
12345
- if (prevDragRow[hasChildField]) {
12346
- if (rowRest && rowRest.treeLoaded) {
12349
+ const prevRowid = getRowid($xeTable, prevDragRow)
12350
+ const rowRest = fullAllDataRowIdData[prevRowid]
12351
+ if (!rowRest) {
12352
+ handleRowDragEndClearStatus()
12353
+ return
12354
+ }
12355
+ const hasLazyChilds = prevDragRow[hasChildField]
12356
+ const rowChilds = prevDragRow[childrenField]
12357
+ // 如果懒加载节点未被加载
12358
+ if (isAutoExpandToChild) {
12359
+ // 判断目标节点是否有树子级
12360
+ if ((lazy && hasLazyChilds) || (rowChilds && rowChilds.length)) {
12361
+ hideDropTip()
12362
+ $xeTable.setTreeExpand(prevDragRow, true).then(() => {
12363
+ $xeTable.handleRowDragSwapEvent(evnt, true, dragRow, prevDragRow, prevDragPos, prevDragToChild)
12364
+ })
12365
+ return
12366
+ }
12367
+ $xeTable.handleRowDragSwapEvent(evnt, true, dragRow, prevDragRow, prevDragPos, prevDragToChild).then(() => {
12368
+ if (!$xeTable.isTreeExpandByRow(prevDragRow)) {
12369
+ $xeTable.setTreeExpand(prevDragRow, true)
12370
+ }
12371
+ })
12372
+ return
12373
+ }
12374
+ // 如果是懒加载节点。只加载不自动展开
12375
+ if ((lazy && hasLazyChilds) && isAutoLazyLoadToChild) {
12376
+ if (rowChilds && rowChilds.length) {
12347
12377
  $xeTable.handleRowDragSwapEvent(evnt, true, dragRow, prevDragRow, prevDragPos, prevDragToChild)
12378
+ return
12348
12379
  }
12349
- } else {
12350
- $xeTable.handleRowDragSwapEvent(evnt, true, dragRow, prevDragRow, prevDragPos, prevDragToChild)
12380
+ hideDropTip()
12381
+ $xeTable.reloadTreeExpand(prevDragRow, false).then(() => {
12382
+ $xeTable.handleRowDragSwapEvent(evnt, true, dragRow, prevDragRow, prevDragPos, prevDragToChild)
12383
+ })
12384
+ return
12385
+ }
12386
+ // 懒加载的行默认需要先展开过后才允许拖拽,除非启用 isAutoExpandToChild | isAutoLazyLoadToChild
12387
+ if (lazy && hasLazyChilds && !rowRest.treeLoaded) {
12388
+ handleRowDragEndClearStatus()
12389
+ return
12351
12390
  }
12352
- } else {
12353
- $xeTable.handleRowDragSwapEvent(evnt, true, dragRow, prevDragRow, prevDragPos, prevDragToChild)
12354
12391
  }
12392
+ $xeTable.handleRowDragSwapEvent(evnt, true, dragRow, prevDragRow, prevDragPos, prevDragToChild)
12355
12393
  },
12356
12394
  handleRowDragDragoverEvent (evnt) {
12357
12395
  const { treeConfig } = props
@@ -12361,7 +12399,7 @@ export default defineVxeComponent({
12361
12399
  const { lazy, transform, parentField } = treeOpts
12362
12400
  const hasChildField = treeOpts.hasChild || treeOpts.hasChildField
12363
12401
  const rowDragOpts = computeRowDragOpts.value
12364
- const { isPeerDrag, isCrossDrag, isToChildDrag, isCrossTableDrag } = rowDragOpts
12402
+ const { isPeerDrag, isCrossDrag, isToChildDrag, isCrossTableDrag, isAutoLazyLoadToChild, isAutoExpandToChild } = rowDragOpts
12365
12403
  if (!dragRow && !(isCrossTableDrag && (!treeConfig || isCrossDrag) && crossTableDragRowObj)) {
12366
12404
  evnt.preventDefault()
12367
12405
  return
@@ -12404,7 +12442,7 @@ export default defineVxeComponent({
12404
12442
  }
12405
12443
  }
12406
12444
  if ($xeTable.eqRow(dragRow, row) ||
12407
- (isControlKey && treeConfig && lazy && row[hasChildField] && rowRest && !rowRest.treeLoaded) ||
12445
+ (isControlKey && treeConfig && lazy && row[hasChildField] && (rowRest && !rowRest.treeLoaded) && !isAutoLazyLoadToChild && !isAutoExpandToChild) ||
12408
12446
  (!isCrossDrag && treeConfig && transform && (isPeerDrag ? dragRow[parentField] !== row[parentField] : rowRest.level))
12409
12447
  ) {
12410
12448
  showDropTip(evnt, trEl, null, false, dragPos)
@@ -14407,12 +14445,20 @@ export default defineVxeComponent({
14407
14445
  * 隐藏列
14408
14446
  */
14409
14447
  h('div', {
14448
+ key: 'tss',
14410
14449
  class: 'vxe-table-slots'
14411
14450
  }, slots.default ? slots.default({}) : []),
14412
14451
  h('div', {
14452
+ key: 'tvr',
14413
14453
  ref: refVarElem,
14414
14454
  class: 'vxe-table-vars'
14415
14455
  }, [
14456
+ h('div', {
14457
+ class: 'vxe-table-var-xlarge'
14458
+ }),
14459
+ h('div', {
14460
+ class: 'vxe-table-var-large'
14461
+ }),
14416
14462
  h('div', {
14417
14463
  class: 'vxe-table-var-default'
14418
14464
  }),
@@ -1,5 +1,25 @@
1
1
  @use '../../helpers/baseMixin.scss';
2
2
 
3
+
4
+ .vxe-table--filter-wrapper {
5
+ --vxe-ui-table-filter-current-font-size: var(--vxe-ui-font-size-default);
6
+ &.size--xlarge {
7
+ --vxe-ui-table-filter-current-font-size: var(--vxe-ui-font-size-xlarge);
8
+ }
9
+ &.size--large {
10
+ --vxe-ui-table-filter-current-font-size: var(--vxe-ui-font-size-large);
11
+ }
12
+ &.size--medium {
13
+ --vxe-ui-table-filter-current-font-size: var(--vxe-ui-font-size-medium);
14
+ }
15
+ &.size--small {
16
+ --vxe-ui-table-filter-current-font-size: var(--vxe-ui-font-size-small);
17
+ }
18
+ &.size--mini {
19
+ --vxe-ui-table-filter-current-font-size: var(--vxe-ui-font-size-mini);
20
+ }
21
+ }
22
+
3
23
  .vxe-cell--filter {
4
24
  padding: 0 0.1em 0 0.2em;
5
25
  text-align: center;
@@ -42,9 +62,14 @@
42
62
  box-shadow: var(--vxe-ui-base-popup-box-shadow);
43
63
  z-index: 15;
44
64
  max-height: var(--vxe-ui-vxe-table-filter-default-max-height);
65
+ &[class^="size--"],
66
+ &[class*=" size--"] {
67
+ font-size: var(--vxe-ui-table-filter-current-font-size);
68
+ }
45
69
  &:not(.is--multiple) {
46
70
  .vxe-table--filter-header,
47
- .vxe-table--filter-body {
71
+ .vxe-table--filter-body,
72
+ .vxe-table--scrollbar-filter-body {
48
73
  text-align: center;
49
74
  }
50
75
  }
@@ -128,15 +153,3 @@
128
153
  .vxe-table--filter-option {
129
154
  @include baseMixin.createCheckboxIcon();
130
155
  }
131
-
132
- .vxe-table--filter-wrapper {
133
- &.size--medium {
134
- font-size: var(--vxe-ui-font-size-medium);
135
- }
136
- &.size--small {
137
- font-size: var(--vxe-ui-font-size-small);
138
- }
139
- &.size--mini {
140
- font-size: var(--vxe-ui-font-size-mini);
141
- }
142
- }
@@ -71,6 +71,12 @@ $btnThemeList: (
71
71
  overflow: hidden;
72
72
  user-select: none;
73
73
  pointer-events: none;
74
+ .vxe-table-var-xlarge {
75
+ height: var(--vxe-ui-table-row-height-xlarge);
76
+ }
77
+ .vxe-table-var-large {
78
+ height: var(--vxe-ui-table-row-height-large);
79
+ }
74
80
  .vxe-table-var-default {
75
81
  height: var(--vxe-ui-table-row-height-default);
76
82
  }
@@ -40,6 +40,7 @@
40
40
  --vxe-ui-table-row-height-medium: 44px;
41
41
  --vxe-ui-table-row-height-small: 40px;
42
42
  --vxe-ui-table-row-height-mini: 36px;
43
+
43
44
  --vxe-ui-table-row-line-height: 22px;
44
45
 
45
46
  --vxe-ui-table-column-icon-border-color: #c0c4cc;