vxe-table 3.15.56 → 3.15.58

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 (64) hide show
  1. package/es/locale/lang/de-DE.js +80 -80
  2. package/es/locale/lang/es-ES.js +79 -79
  3. package/es/locale/lang/ja-JP.js +82 -82
  4. package/es/locale/lang/ko-KR.js +88 -88
  5. package/es/locale/lang/ru-RU.js +84 -84
  6. package/es/locale/lang/vi-VN.js +79 -79
  7. package/es/locale/lang/zh-CHT.js +21 -21
  8. package/es/style.css +1 -1
  9. package/es/table/src/methods.js +2 -2
  10. package/es/table/src/table.js +35 -118
  11. package/es/table/src/util.js +116 -0
  12. package/es/ui/index.js +1 -1
  13. package/es/ui/src/log.js +1 -1
  14. package/lib/index.umd.js +160 -121
  15. package/lib/index.umd.min.js +1 -1
  16. package/lib/locale/lang/de-DE.js +80 -80
  17. package/lib/locale/lang/de-DE.min.js +1 -1
  18. package/lib/locale/lang/de-DE.umd.js +80 -80
  19. package/lib/locale/lang/es-ES.js +79 -79
  20. package/lib/locale/lang/es-ES.min.js +1 -1
  21. package/lib/locale/lang/es-ES.umd.js +79 -79
  22. package/lib/locale/lang/ja-JP.js +82 -82
  23. package/lib/locale/lang/ja-JP.min.js +1 -1
  24. package/lib/locale/lang/ja-JP.umd.js +82 -82
  25. package/lib/locale/lang/ko-KR.js +88 -88
  26. package/lib/locale/lang/ko-KR.min.js +1 -1
  27. package/lib/locale/lang/ko-KR.umd.js +88 -88
  28. package/lib/locale/lang/ru-RU.js +84 -84
  29. package/lib/locale/lang/ru-RU.min.js +1 -1
  30. package/lib/locale/lang/ru-RU.umd.js +84 -84
  31. package/lib/locale/lang/vi-VN.js +79 -79
  32. package/lib/locale/lang/vi-VN.min.js +1 -1
  33. package/lib/locale/lang/vi-VN.umd.js +79 -79
  34. package/lib/locale/lang/zh-CHT.js +21 -21
  35. package/lib/locale/lang/zh-CHT.min.js +1 -1
  36. package/lib/locale/lang/zh-CHT.umd.js +21 -21
  37. package/lib/style.css +1 -1
  38. package/lib/table/src/methods.js +2 -2
  39. package/lib/table/src/methods.min.js +1 -1
  40. package/lib/table/src/table.js +40 -117
  41. package/lib/table/src/table.min.js +1 -1
  42. package/lib/table/src/util.js +117 -0
  43. package/lib/table/src/util.min.js +1 -1
  44. package/lib/ui/index.js +1 -1
  45. package/lib/ui/index.min.js +1 -1
  46. package/lib/ui/src/log.js +1 -1
  47. package/lib/ui/src/log.min.js +1 -1
  48. package/package.json +1 -1
  49. package/packages/locale/lang/de-DE.ts +80 -80
  50. package/packages/locale/lang/es-ES.ts +79 -79
  51. package/packages/locale/lang/ja-JP.ts +82 -82
  52. package/packages/locale/lang/ko-KR.ts +88 -88
  53. package/packages/locale/lang/ru-RU.ts +84 -84
  54. package/packages/locale/lang/vi-VN.ts +79 -79
  55. package/packages/locale/lang/zh-CHT.ts +21 -21
  56. package/packages/table/src/methods.ts +2 -2
  57. package/packages/table/src/table.ts +36 -122
  58. package/packages/table/src/util.ts +120 -0
  59. /package/es/{iconfont.1753525475408.ttf → iconfont.1754455794027.ttf} +0 -0
  60. /package/es/{iconfont.1753525475408.woff → iconfont.1754455794027.woff} +0 -0
  61. /package/es/{iconfont.1753525475408.woff2 → iconfont.1754455794027.woff2} +0 -0
  62. /package/lib/{iconfont.1753525475408.ttf → iconfont.1754455794027.ttf} +0 -0
  63. /package/lib/{iconfont.1753525475408.woff → iconfont.1754455794027.woff} +0 -0
  64. /package/lib/{iconfont.1753525475408.woff2 → iconfont.1754455794027.woff2} +0 -0
@@ -1,7 +1,7 @@
1
1
  import XEUtils from 'xe-utils';
2
2
  import { getFuncText, isEnableConf } from '../../ui/src/utils';
3
3
  import { initTpImg } from '../../ui/src/dom';
4
- import { createHandleGetRowId, getCellHeight, hasDeepKey } from './util';
4
+ import { createInternalData, createHandleGetRowId, getCellHeight, hasDeepKey } from './util';
5
5
  import { VxeUI } from '../../ui';
6
6
  import methods from './methods';
7
7
  import TableBodyComponent from './body';
@@ -743,12 +743,40 @@ export default {
743
743
  computeVirtualXOpts() {
744
744
  const $xeTable = this;
745
745
  const props = $xeTable;
746
- return Object.assign({}, getConfig().table.virtualXConfig || getConfig().table.scrollX, props.virtualXConfig || props.scrollX);
746
+ const { virtualXConfig, scrollX } = props;
747
+ const globalVirtualXConfig = getConfig().table.virtualXConfig;
748
+ const globalScrollX = getConfig().table.scrollX;
749
+ if (virtualXConfig) {
750
+ return Object.assign({}, globalVirtualXConfig, virtualXConfig);
751
+ }
752
+ if (scrollX) {
753
+ // 已废弃,保留兼容
754
+ return Object.assign({}, globalScrollX, scrollX);
755
+ }
756
+ if (globalVirtualXConfig) {
757
+ return Object.assign({}, globalVirtualXConfig, virtualXConfig);
758
+ }
759
+ // 已废弃,保留兼容
760
+ return Object.assign({}, globalScrollX, scrollX);
747
761
  },
748
762
  computeVirtualYOpts() {
749
763
  const $xeTable = this;
750
764
  const props = $xeTable;
751
- return Object.assign({}, getConfig().table.virtualYConfig || getConfig().table.scrollY, props.virtualYConfig || props.scrollY);
765
+ const { virtualYConfig, scrollY } = props;
766
+ const globalVirtualYConfig = getConfig().table.virtualYConfig;
767
+ const globalScrollY = getConfig().table.scrollY;
768
+ if (virtualYConfig) {
769
+ return Object.assign({}, globalVirtualYConfig, virtualYConfig);
770
+ }
771
+ if (scrollY) {
772
+ // 已废弃,保留兼容
773
+ return Object.assign({}, globalScrollY, scrollY);
774
+ }
775
+ if (globalVirtualYConfig) {
776
+ return Object.assign({}, globalVirtualYConfig, virtualYConfig);
777
+ }
778
+ // 已废弃,保留兼容
779
+ return Object.assign({}, globalScrollY, scrollY);
752
780
  },
753
781
  computeScrollbarOpts() {
754
782
  const $xeTable = this;
@@ -1236,7 +1264,7 @@ export default {
1236
1264
  if (value && value.length >= 50000) {
1237
1265
  warnLog('vxe.error.errLargeData', ['loadData(data), reloadData(data)']);
1238
1266
  }
1239
- this.loadTableData(value || [], false).then(() => {
1267
+ this.loadTableData(value || [], true).then(() => {
1240
1268
  const { scrollXLoad, scrollYLoad, expandColumn } = reactData;
1241
1269
  const expandOpts = $xeTable.computeExpandOpts;
1242
1270
  this.inited = true;
@@ -1359,116 +1387,7 @@ export default {
1359
1387
  const $xeTable = this;
1360
1388
  const props = $xeTable;
1361
1389
  const internalData = $xeTable;
1362
- Object.assign($xeTable, {
1363
- tZindex: 0,
1364
- currKeyField: '',
1365
- isCurrDeepKey: false,
1366
- elemStore: {},
1367
- // 存放横向 X 虚拟滚动相关的信息
1368
- scrollXStore: {
1369
- preloadSize: 0,
1370
- offsetSize: 0,
1371
- visibleSize: 0,
1372
- visibleStartIndex: 0,
1373
- visibleEndIndex: 0,
1374
- startIndex: 0,
1375
- endIndex: 0
1376
- },
1377
- // 存放纵向 Y 虚拟滚动相关信息
1378
- scrollYStore: {
1379
- preloadSize: 0,
1380
- offsetSize: 0,
1381
- visibleSize: 0,
1382
- visibleStartIndex: 0,
1383
- visibleEndIndex: 0,
1384
- startIndex: 0,
1385
- endIndex: 0
1386
- },
1387
- // 表格宽度
1388
- tableWidth: 0,
1389
- // 表格高度
1390
- tableHeight: 0,
1391
- // 表头高度
1392
- headerHeight: 0,
1393
- // 表尾高度
1394
- footerHeight: 0,
1395
- // 当前 hover 行
1396
- // hoverRow: null,
1397
- // 最后滚动位置
1398
- lastScrollLeft: 0,
1399
- lastScrollTop: 0,
1400
- // 单选框属性,已选中保留的行
1401
- radioReserveRow: null,
1402
- // 复选框属性,已选中保留的行集合
1403
- checkboxReserveRowMap: {},
1404
- // 行数据,已展开保留的行集合
1405
- rowExpandedReserveRowMap: {},
1406
- // 树结构数据,已展开保留的行集合
1407
- treeExpandedReserveRowMap: {},
1408
- // 树结构数据,不确定状态的集合
1409
- treeIndeterminateRowMaps: {},
1410
- // 列表完整数据、条件处理后
1411
- tableFullData: [],
1412
- afterFullData: [],
1413
- afterTreeFullData: [],
1414
- afterGroupFullData: [],
1415
- // 列表条件处理后数据集合
1416
- afterFullRowMaps: {},
1417
- // 树结构完整数据、条件处理后
1418
- tableFullTreeData: [],
1419
- // 行分组全量数据、条件处理后
1420
- tableFullGroupData: [],
1421
- tableSynchData: [],
1422
- tableSourceData: [],
1423
- // 收集的列配置(带分组)
1424
- collectColumn: [],
1425
- // 完整所有列(不带分组)
1426
- tableFullColumn: [],
1427
- // 渲染所有列
1428
- visibleColumn: [],
1429
- // 全量数据集(包括当前和已删除)
1430
- fullAllDataRowIdData: {},
1431
- // 数据集(仅当前)
1432
- fullDataRowIdData: {},
1433
- // 数据集(仅可视)
1434
- visibleDataRowIdData: {},
1435
- // 渲染中缓存数据
1436
- sourceDataRowIdData: {},
1437
- fullColumnIdData: {},
1438
- fullColumnFieldData: {},
1439
- // 合并单元格的数据
1440
- mergeBodyList: [],
1441
- mergeBodyMaps: {},
1442
- // 合并表尾的数据
1443
- mergeFooterList: [],
1444
- mergeFooterMaps: {},
1445
- // 已合并单元格数据集合
1446
- mergeBodyCellMaps: {},
1447
- // 已合并表尾数据集合
1448
- mergeFooterCellMaps: {},
1449
- // 已展开的行集合
1450
- rowExpandedMaps: {},
1451
- // 懒加载中的展开行的集合
1452
- rowExpandLazyLoadedMaps: {},
1453
- // 已展开的分组行
1454
- rowGroupExpandedMaps: {},
1455
- // 已展开树节点集合
1456
- treeExpandedMaps: {},
1457
- // 懒加载中的树节点的集合
1458
- treeExpandLazyLoadedMaps: {},
1459
- // 复选框属性,已选中的行集合
1460
- selectCheckboxMaps: {},
1461
- // 已标记的对象集
1462
- pendingRowMaps: {},
1463
- // 已新增的临时行
1464
- insertRowMaps: {},
1465
- // 已删除行
1466
- removeRowMaps: {},
1467
- cvCacheMaps: {},
1468
- swYSize: 0,
1469
- swYInterval: 0,
1470
- swYTotal: 0
1471
- });
1390
+ XEUtils.assign(internalData, createInternalData());
1472
1391
  handleKeyField($xeTable);
1473
1392
  const { data, exportConfig, importConfig, treeConfig, showOverflow, highlightCurrentRow, highlightCurrentColumn } = props;
1474
1393
  const { scrollXStore, scrollYStore } = internalData;
@@ -1800,14 +1719,10 @@ export default {
1800
1719
  },
1801
1720
  beforeDestroy() {
1802
1721
  const $xeTable = this;
1803
- const internalData = $xeTable;
1804
1722
  const tableViewportEl = $xeTable.$refs.refTableViewportElem;
1805
1723
  if (tableViewportEl) {
1806
1724
  tableViewportEl.removeEventListener('wheel', $xeTable.triggerBodyWheelEvent);
1807
1725
  }
1808
- internalData.cvCacheMaps = {};
1809
- internalData.prevDragRow = null;
1810
- internalData.prevDragCol = null;
1811
1726
  if (this.$resize) {
1812
1727
  this.$resize.disconnect();
1813
1728
  }
@@ -1817,6 +1732,7 @@ export default {
1817
1732
  },
1818
1733
  destroyed() {
1819
1734
  const $xeTable = this;
1735
+ const internalData = $xeTable;
1820
1736
  globalEvents.off($xeTable, 'paste');
1821
1737
  globalEvents.off($xeTable, 'copy');
1822
1738
  globalEvents.off($xeTable, 'cut');
@@ -1827,6 +1743,7 @@ export default {
1827
1743
  globalEvents.off($xeTable, 'resize');
1828
1744
  globalEvents.off($xeTable, 'contextmenu');
1829
1745
  this.preventEvent(null, 'destroyed');
1746
+ XEUtils.assign(internalData, createInternalData());
1830
1747
  },
1831
1748
  render(h) {
1832
1749
  // 使用已安装的组件,如果未安装则不渲染
@@ -3,6 +3,122 @@ import { ColumnInfo } from './columnInfo';
3
3
  import { isScale, isPx, queryElement } from '../../ui/src/dom';
4
4
  import { warnLog, errLog } from '../../ui/src/log';
5
5
  import { eqEmptyValue } from '../../ui/src/utils';
6
+ export function createInternalData() {
7
+ return {
8
+ tZindex: 0,
9
+ currKeyField: '',
10
+ isCurrDeepKey: false,
11
+ elemStore: {},
12
+ // 存放横向 X 虚拟滚动相关的信息
13
+ scrollXStore: {
14
+ preloadSize: 0,
15
+ offsetSize: 0,
16
+ visibleSize: 0,
17
+ visibleStartIndex: 0,
18
+ visibleEndIndex: 0,
19
+ startIndex: 0,
20
+ endIndex: 0
21
+ },
22
+ // 存放纵向 Y 虚拟滚动相关信息
23
+ scrollYStore: {
24
+ preloadSize: 0,
25
+ offsetSize: 0,
26
+ visibleSize: 0,
27
+ visibleStartIndex: 0,
28
+ visibleEndIndex: 0,
29
+ startIndex: 0,
30
+ endIndex: 0
31
+ },
32
+ // 表格宽度
33
+ tableWidth: 0,
34
+ // 表格高度
35
+ tableHeight: 0,
36
+ // 表头高度
37
+ headerHeight: 0,
38
+ // 表尾高度
39
+ footerHeight: 0,
40
+ customHeight: 0,
41
+ customMinHeight: 0,
42
+ customMaxHeight: 0,
43
+ // 当前 hover 行
44
+ hoverRow: null,
45
+ // 最后滚动位置
46
+ lastScrollLeft: 0,
47
+ lastScrollTop: 0,
48
+ // 单选框属性,已选中保留的行
49
+ radioReserveRow: null,
50
+ // 复选框属性,已选中保留的行集合
51
+ checkboxReserveRowMap: {},
52
+ // 行数据,已展开保留的行集合
53
+ rowExpandedReserveRowMap: {},
54
+ // 树结构数据,已展开保留的行集合
55
+ treeExpandedReserveRowMap: {},
56
+ // 树结构数据,不确定状态的集合
57
+ treeIndeterminateRowMaps: {},
58
+ // 列表完整数据、条件处理后
59
+ tableFullData: [],
60
+ afterFullData: [],
61
+ afterTreeFullData: [],
62
+ afterGroupFullData: [],
63
+ // 列表条件处理后数据集合
64
+ afterFullRowMaps: {},
65
+ // 树结构完整数据、条件处理后
66
+ tableFullTreeData: [],
67
+ // 行分组全量数据、条件处理后
68
+ tableFullGroupData: [],
69
+ tableSynchData: [],
70
+ tableSourceData: [],
71
+ // 收集的列配置(带分组)
72
+ collectColumn: [],
73
+ // 完整所有列(不带分组)
74
+ tableFullColumn: [],
75
+ // 渲染所有列
76
+ visibleColumn: [],
77
+ // 全量数据集(包括当前和已删除)
78
+ fullAllDataRowIdData: {},
79
+ // 数据集(仅当前)
80
+ fullDataRowIdData: {},
81
+ // 数据集(仅可视)
82
+ visibleDataRowIdData: {},
83
+ // 渲染中缓存数据
84
+ sourceDataRowIdData: {},
85
+ fullColumnIdData: {},
86
+ fullColumnFieldData: {},
87
+ // 合并单元格的数据
88
+ mergeBodyList: [],
89
+ mergeBodyMaps: {},
90
+ // 合并表尾的数据
91
+ mergeFooterList: [],
92
+ mergeFooterMaps: {},
93
+ // 已合并单元格数据集合
94
+ mergeBodyCellMaps: {},
95
+ // 已合并表尾数据集合
96
+ mergeFooterCellMaps: {},
97
+ // 已展开的行集合
98
+ rowExpandedMaps: {},
99
+ // 懒加载中的展开行的集合
100
+ rowExpandLazyLoadedMaps: {},
101
+ // 已展开的分组行
102
+ rowGroupExpandedMaps: {},
103
+ // 已展开树节点集合
104
+ treeExpandedMaps: {},
105
+ // 懒加载中的树节点的集合
106
+ treeExpandLazyLoadedMaps: {},
107
+ // 复选框属性,已选中的行集合
108
+ selectCheckboxMaps: {},
109
+ // 已标记的对象集
110
+ pendingRowMaps: {},
111
+ // 已新增的临时行
112
+ insertRowMaps: {},
113
+ // 已删除行
114
+ removeRowMaps: {},
115
+ cvCacheMaps: {},
116
+ inited: false,
117
+ tooltipTimeout: null,
118
+ initStatus: false,
119
+ isActivated: false
120
+ };
121
+ }
6
122
  const getAllConvertColumns = (columns, parentColumn) => {
7
123
  const result = [];
8
124
  columns.forEach((column) => {
package/es/ui/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  import { getFuncText } from './src/utils';
3
- export const version = "3.15.56";
3
+ export const version = "3.15.58";
4
4
  VxeUI.version = version;
5
5
  VxeUI.tableVersion = version;
6
6
  VxeUI.setConfig({
package/es/ui/src/log.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  const { log } = VxeUI;
3
- const version = `table v${"3.15.56"}`;
3
+ const version = `table v${"3.15.58"}`;
4
4
  export const warnLog = log.create('warn', version);
5
5
  export const errLog = log.create('error', version);