vxe-table 3.15.10 → 3.15.12

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 (102) hide show
  1. package/es/locale/lang/ar-EG.js +511 -511
  2. package/es/locale/lang/de-DE.js +280 -280
  3. package/es/locale/lang/en-US.js +206 -206
  4. package/es/locale/lang/es-ES.js +494 -501
  5. package/es/locale/lang/fr-FR.js +517 -517
  6. package/es/locale/lang/hu-HU.js +372 -372
  7. package/es/locale/lang/id-ID.js +529 -529
  8. package/es/locale/lang/it-IT.js +297 -297
  9. package/es/locale/lang/ja-JP.js +454 -454
  10. package/es/locale/lang/ko-KR.js +415 -415
  11. package/es/locale/lang/nb-NO.js +515 -515
  12. package/es/locale/lang/pt-BR.js +505 -505
  13. package/es/locale/lang/ru-RU.js +326 -326
  14. package/es/locale/lang/th-TH.js +255 -255
  15. package/es/locale/lang/uk-UA.js +450 -450
  16. package/es/locale/lang/vi-VN.js +528 -528
  17. package/es/locale/lang/zh-CHT.js +155 -155
  18. package/es/style.css +1 -1
  19. package/es/table/src/methods.js +48 -48
  20. package/es/table/src/util.js +12 -16
  21. package/es/ui/index.js +1 -1
  22. package/es/ui/src/log.js +1 -1
  23. package/lib/index.umd.js +63 -75
  24. package/lib/index.umd.min.js +1 -1
  25. package/lib/locale/lang/ar-EG.js +511 -511
  26. package/lib/locale/lang/ar-EG.min.js +1 -1
  27. package/lib/locale/lang/de-DE.js +280 -280
  28. package/lib/locale/lang/de-DE.min.js +1 -1
  29. package/lib/locale/lang/en-US.js +206 -206
  30. package/lib/locale/lang/en-US.min.js +1 -1
  31. package/lib/locale/lang/en-US.umd.js +206 -206
  32. package/lib/locale/lang/es-ES.js +494 -501
  33. package/lib/locale/lang/es-ES.min.js +1 -1
  34. package/lib/locale/lang/es-ES.umd.js +494 -501
  35. package/lib/locale/lang/fr-FR.js +517 -517
  36. package/lib/locale/lang/fr-FR.min.js +1 -1
  37. package/lib/locale/lang/hu-HU.js +372 -372
  38. package/lib/locale/lang/hu-HU.min.js +1 -1
  39. package/lib/locale/lang/hu-HU.umd.js +372 -372
  40. package/lib/locale/lang/id-ID.js +529 -529
  41. package/lib/locale/lang/id-ID.min.js +1 -1
  42. package/lib/locale/lang/it-IT.js +297 -297
  43. package/lib/locale/lang/it-IT.min.js +1 -1
  44. package/lib/locale/lang/ja-JP.js +454 -454
  45. package/lib/locale/lang/ja-JP.min.js +1 -1
  46. package/lib/locale/lang/ja-JP.umd.js +454 -454
  47. package/lib/locale/lang/ko-KR.js +415 -415
  48. package/lib/locale/lang/ko-KR.min.js +1 -1
  49. package/lib/locale/lang/ko-KR.umd.js +415 -415
  50. package/lib/locale/lang/nb-NO.js +515 -515
  51. package/lib/locale/lang/nb-NO.min.js +1 -1
  52. package/lib/locale/lang/pt-BR.js +505 -505
  53. package/lib/locale/lang/pt-BR.min.js +1 -1
  54. package/lib/locale/lang/pt-BR.umd.js +505 -505
  55. package/lib/locale/lang/ru-RU.js +326 -326
  56. package/lib/locale/lang/ru-RU.min.js +1 -1
  57. package/lib/locale/lang/ru-RU.umd.js +326 -326
  58. package/lib/locale/lang/th-TH.js +255 -255
  59. package/lib/locale/lang/th-TH.min.js +1 -1
  60. package/lib/locale/lang/uk-UA.js +450 -450
  61. package/lib/locale/lang/uk-UA.min.js +1 -1
  62. package/lib/locale/lang/uk-UA.umd.js +450 -450
  63. package/lib/locale/lang/vi-VN.js +528 -528
  64. package/lib/locale/lang/vi-VN.min.js +1 -1
  65. package/lib/locale/lang/zh-CHT.js +155 -155
  66. package/lib/locale/lang/zh-CHT.min.js +1 -1
  67. package/lib/locale/lang/zh-CHT.umd.js +155 -155
  68. package/lib/style.css +1 -1
  69. package/lib/table/src/methods.js +49 -57
  70. package/lib/table/src/methods.min.js +1 -1
  71. package/lib/table/src/util.js +12 -16
  72. package/lib/table/src/util.min.js +1 -1
  73. package/lib/ui/index.js +1 -1
  74. package/lib/ui/index.min.js +1 -1
  75. package/lib/ui/src/log.js +1 -1
  76. package/lib/ui/src/log.min.js +1 -1
  77. package/package.json +2 -2
  78. package/packages/locale/lang/ar-EG.ts +511 -511
  79. package/packages/locale/lang/de-DE.ts +281 -282
  80. package/packages/locale/lang/en-US.ts +206 -206
  81. package/packages/locale/lang/es-ES.ts +494 -503
  82. package/packages/locale/lang/fr-FR.ts +517 -517
  83. package/packages/locale/lang/hu-HU.ts +372 -372
  84. package/packages/locale/lang/id-ID.ts +529 -529
  85. package/packages/locale/lang/it-IT.ts +297 -297
  86. package/packages/locale/lang/ja-JP.ts +454 -454
  87. package/packages/locale/lang/ko-KR.ts +415 -415
  88. package/packages/locale/lang/nb-NO.ts +515 -515
  89. package/packages/locale/lang/pt-BR.ts +505 -505
  90. package/packages/locale/lang/ru-RU.ts +326 -326
  91. package/packages/locale/lang/th-TH.ts +255 -255
  92. package/packages/locale/lang/uk-UA.ts +450 -450
  93. package/packages/locale/lang/vi-VN.ts +528 -528
  94. package/packages/locale/lang/zh-CHT.ts +155 -155
  95. package/packages/table/src/methods.ts +59 -55
  96. package/packages/table/src/util.ts +12 -17
  97. /package/es/{iconfont.1745546354510.ttf → iconfont.1745723938260.ttf} +0 -0
  98. /package/es/{iconfont.1745546354510.woff → iconfont.1745723938260.woff} +0 -0
  99. /package/es/{iconfont.1745546354510.woff2 → iconfont.1745723938260.woff2} +0 -0
  100. /package/lib/{iconfont.1745546354510.ttf → iconfont.1745723938260.ttf} +0 -0
  101. /package/lib/{iconfont.1745546354510.woff → iconfont.1745723938260.woff} +0 -0
  102. /package/lib/{iconfont.1745546354510.woff2 → iconfont.1745723938260.woff2} +0 -0
@@ -7275,13 +7275,13 @@ const Methods = {
7275
7275
  checkValidate($xeTable, 'blur')
7276
7276
  .catch((e) => e)
7277
7277
  .then(() => {
7278
- this.handleEdit(params, evnt)
7278
+ $xeTable.handleEdit(params, evnt)
7279
7279
  .then(() => checkValidate($xeTable, 'change'))
7280
7280
  .catch((e) => e);
7281
7281
  });
7282
7282
  }
7283
7283
  else if (editOpts.mode === 'cell') {
7284
- this.handleEdit(params, evnt)
7284
+ $xeTable.handleEdit(params, evnt)
7285
7285
  .then(() => checkValidate($xeTable, 'change'))
7286
7286
  .catch((e) => e);
7287
7287
  }
@@ -8132,7 +8132,7 @@ const Methods = {
8132
8132
  },
8133
8133
  sort(sortConfs, sortOrder) {
8134
8134
  const $xeTable = this;
8135
- const { sortOpts } = this;
8135
+ const sortOpts = $xeTable.computeSortOpts;
8136
8136
  const { multiple, remote, orders } = sortOpts;
8137
8137
  if (sortConfs) {
8138
8138
  if (XEUtils.isString(sortConfs)) {
@@ -8147,20 +8147,20 @@ const Methods = {
8147
8147
  if (sortConfs.length) {
8148
8148
  let firstSortColumn;
8149
8149
  if (!multiple) {
8150
- clearAllSort(this);
8150
+ clearAllSort($xeTable);
8151
8151
  }
8152
8152
  (multiple ? sortConfs : [sortConfs[0]]).forEach((confs, index) => {
8153
8153
  let { field, order } = confs;
8154
8154
  let column = field;
8155
8155
  if (XEUtils.isString(field)) {
8156
- column = this.getColumnByField(field);
8156
+ column = $xeTable.getColumnByField(field);
8157
8157
  }
8158
8158
  if (column && (column.sortable || column.remoteSort)) {
8159
8159
  if (!firstSortColumn) {
8160
8160
  firstSortColumn = column;
8161
8161
  }
8162
- if (orders.indexOf(order) === -1) {
8163
- order = getNextSortOrder(this, column);
8162
+ if (orders && orders.indexOf(order) === -1) {
8163
+ order = getNextSortOrder($xeTable, column);
8164
8164
  }
8165
8165
  if (column.order !== order) {
8166
8166
  column.order = order;
@@ -8170,14 +8170,15 @@ const Methods = {
8170
8170
  });
8171
8171
  // 如果是服务端排序,则跳过本地排序处理
8172
8172
  if (!remote || (firstSortColumn && firstSortColumn.remoteSort)) {
8173
- this.handleTableData(true);
8173
+ $xeTable.handleTableData(true);
8174
8174
  }
8175
- return this.$nextTick().then(() => {
8176
- this.updateCellAreas();
8175
+ return $xeTable.$nextTick().then(() => {
8176
+ updateRowOffsetTop($xeTable);
8177
+ $xeTable.updateCellAreas();
8177
8178
  return updateStyle($xeTable);
8178
8179
  });
8179
8180
  }
8180
- return this.$nextTick();
8181
+ return $xeTable.$nextTick();
8181
8182
  },
8182
8183
  setSort(sortConfs, isUpdate) {
8183
8184
  const $xeTable = this;
@@ -8202,7 +8203,7 @@ const Methods = {
8202
8203
  firstColumn = column;
8203
8204
  }
8204
8205
  if (column && column.sortable) {
8205
- if (orders.indexOf(order) === -1) {
8206
+ if (orders && orders.indexOf(order) === -1) {
8206
8207
  order = getNextSortOrder($xeTable, column);
8207
8208
  }
8208
8209
  if (column.order !== order) {
@@ -8218,6 +8219,7 @@ const Methods = {
8218
8219
  $xeTable.handleColumnSortEvent(new Event('click'), firstColumn);
8219
8220
  }
8220
8221
  return $xeTable.$nextTick().then(() => {
8222
+ updateRowOffsetTop($xeTable);
8221
8223
  $xeTable.updateCellAreas();
8222
8224
  return updateStyle($xeTable);
8223
8225
  });
@@ -8231,20 +8233,23 @@ const Methods = {
8231
8233
  */
8232
8234
  clearSort(fieldOrColumn) {
8233
8235
  const $xeTable = this;
8234
- const { sortOpts } = this;
8236
+ const sortOpts = $xeTable.computeSortOpts;
8235
8237
  if (fieldOrColumn) {
8236
- const column = handleFieldOrColumn(this, fieldOrColumn);
8238
+ const column = handleFieldOrColumn($xeTable, fieldOrColumn);
8237
8239
  if (column) {
8238
8240
  column.order = null;
8239
8241
  }
8240
8242
  }
8241
8243
  else {
8242
- clearAllSort(this);
8244
+ clearAllSort($xeTable);
8243
8245
  }
8244
8246
  if (!sortOpts.remote) {
8245
- this.handleTableData(true);
8247
+ $xeTable.handleTableData(true);
8246
8248
  }
8247
- return this.$nextTick().then(() => updateStyle($xeTable));
8249
+ return $xeTable.$nextTick().then(() => {
8250
+ updateRowOffsetTop($xeTable);
8251
+ return updateStyle($xeTable);
8252
+ });
8248
8253
  },
8249
8254
  // 在 v3 中废弃
8250
8255
  getSortColumn() {
@@ -9580,48 +9585,42 @@ const Methods = {
9580
9585
  */
9581
9586
  scrollTo(scrollLeft, scrollTop) {
9582
9587
  const $xeTable = this;
9588
+ const reactData = $xeTable;
9583
9589
  const internalData = $xeTable;
9584
- const { $refs } = this;
9585
- const { refTableBody, refTableHeader, leftBody, rightBody, refTableFooter } = $refs;
9586
- const tableBodyElem = refTableBody ? refTableBody.$el : null;
9587
- const leftBodyElem = leftBody ? leftBody.$el : null;
9588
- const rightBodyElem = rightBody ? rightBody.$el : null;
9589
- const tableHeaderElem = refTableHeader ? refTableHeader.$el : null;
9590
- const tableFooterElem = refTableFooter ? refTableFooter.$el : null;
9590
+ const { elemStore } = internalData;
9591
+ const headerScrollElem = getRefElem(elemStore['main-header-scroll']);
9592
+ const bodyScrollElem = getRefElem(elemStore['main-body-scroll']);
9593
+ const footerScrollElem = getRefElem(elemStore['main-footer-scroll']);
9594
+ const leftScrollElem = getRefElem(elemStore['left-body-scroll']);
9595
+ const rightScrollElem = getRefElem(elemStore['right-body-scroll']);
9596
+ const xHandleEl = $xeTable.$refs.refScrollXHandleElem;
9597
+ const yHandleEl = $xeTable.$refs.refScrollYHandleElem;
9591
9598
  internalData.intoRunScroll = true;
9592
9599
  if (XEUtils.isNumber(scrollLeft)) {
9593
- const xHandleEl = $xeTable.$refs.refScrollXHandleElem;
9594
- if (xHandleEl) {
9595
- setScrollLeft(xHandleEl, scrollLeft);
9596
- }
9597
- else {
9598
- setScrollLeft(tableBodyElem, scrollLeft);
9599
- setScrollLeft(tableHeaderElem, scrollLeft);
9600
- setScrollLeft(tableFooterElem, scrollLeft);
9601
- }
9600
+ setScrollLeft(xHandleEl, scrollLeft);
9601
+ setScrollLeft(bodyScrollElem, scrollLeft);
9602
+ setScrollLeft(headerScrollElem, scrollLeft);
9603
+ setScrollLeft(footerScrollElem, scrollLeft);
9604
+ loadScrollXData($xeTable);
9602
9605
  }
9603
9606
  if (XEUtils.isNumber(scrollTop)) {
9604
- const yHandleEl = $xeTable.$refs.refScrollYHandleElem;
9605
- if (yHandleEl) {
9606
- setScrollTop(yHandleEl, scrollTop);
9607
- }
9608
- else {
9609
- setScrollTop(tableBodyElem, scrollTop);
9610
- setScrollTop(leftBodyElem, scrollTop);
9611
- setScrollTop(rightBodyElem, scrollTop);
9612
- }
9607
+ setScrollTop(yHandleEl, scrollTop);
9608
+ setScrollTop(bodyScrollElem, scrollTop);
9609
+ setScrollTop(leftScrollElem, scrollTop);
9610
+ setScrollTop(rightScrollElem, scrollTop);
9611
+ loadScrollYData($xeTable);
9613
9612
  }
9614
- if (this.scrollXLoad || this.scrollYLoad) {
9613
+ if (reactData.scrollXLoad || reactData.scrollYLoad) {
9615
9614
  return new Promise(resolve => {
9616
9615
  setTimeout(() => {
9617
9616
  $xeTable.$nextTick(() => {
9618
9617
  internalData.intoRunScroll = false;
9619
9618
  resolve();
9620
9619
  });
9621
- });
9620
+ }, 30);
9622
9621
  });
9623
9622
  }
9624
- return this.$nextTick();
9623
+ return $xeTable.$nextTick();
9625
9624
  },
9626
9625
  /**
9627
9626
  * 如果有滚动条,则滚动到对应的行
@@ -9630,15 +9629,16 @@ const Methods = {
9630
9629
  */
9631
9630
  scrollToRow(row, fieldOrColumn) {
9632
9631
  const $xeTable = this;
9632
+ const props = $xeTable;
9633
9633
  const reactData = $xeTable;
9634
9634
  const { isAllOverflow, scrollYLoad, scrollXLoad } = reactData;
9635
9635
  const rest = [];
9636
9636
  if (row) {
9637
- if (this.treeConfig) {
9638
- rest.push(this.scrollToTreeRow(row));
9637
+ if (props.treeConfig) {
9638
+ rest.push($xeTable.scrollToTreeRow(row));
9639
9639
  }
9640
9640
  else {
9641
- rest.push(rowToVisible(this, row));
9641
+ rest.push(rowToVisible($xeTable, row));
9642
9642
  }
9643
9643
  }
9644
9644
  if (fieldOrColumn) {
@@ -64,22 +64,18 @@ export const convertHeaderColumnToRows = (originColumns) => {
64
64
  };
65
65
  export function restoreScrollLocation($xeTable, scrollLeft, scrollTop) {
66
66
  const internalData = $xeTable;
67
- return $xeTable.clearScroll().then(() => {
68
- if (scrollLeft || scrollTop) {
69
- // 重置最后滚动状态
70
- internalData.lastScrollLeft = 0;
71
- internalData.lastScrollTop = 0;
72
- internalData.intoRunScroll = false;
73
- internalData.inVirtualScroll = false;
74
- internalData.inWheelScroll = false;
75
- internalData.inHeaderScroll = false;
76
- internalData.inBodyScroll = false;
77
- internalData.inFooterScroll = false;
78
- internalData.scrollRenderType = '';
79
- // 还原滚动状态
80
- return $xeTable.scrollTo(scrollLeft, scrollTop);
81
- }
82
- });
67
+ if (scrollLeft || scrollTop) {
68
+ internalData.intoRunScroll = false;
69
+ internalData.inVirtualScroll = false;
70
+ internalData.inWheelScroll = false;
71
+ internalData.inHeaderScroll = false;
72
+ internalData.inBodyScroll = false;
73
+ internalData.inFooterScroll = false;
74
+ internalData.scrollRenderType = '';
75
+ // 还原滚动状态
76
+ return $xeTable.scrollTo(scrollLeft, scrollTop);
77
+ }
78
+ return $xeTable.$nextTick();
83
79
  }
84
80
  export function toTreePathSeq(path) {
85
81
  return path.map((num, i) => i % 2 === 0 ? (Number(num) + 1) : '.').join('');
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.10";
3
+ export const version = "3.15.12";
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.10"}`;
3
+ const version = `table v${"3.15.12"}`;
4
4
  export const warnLog = log.create('warn', version);
5
5
  export const errLog = log.create('error', version);
package/lib/index.umd.js CHANGED
@@ -2220,7 +2220,7 @@ function getClass(property, params) {
2220
2220
  ;// CONCATENATED MODULE: ./packages/ui/index.ts
2221
2221
 
2222
2222
 
2223
- const version = "3.15.10";
2223
+ const version = "3.15.12";
2224
2224
  core_.VxeUI.version = version;
2225
2225
  core_.VxeUI.tableVersion = version;
2226
2226
  core_.VxeUI.setConfig({
@@ -2858,7 +2858,7 @@ function isNodeElement(elem) {
2858
2858
  const {
2859
2859
  log: log_log
2860
2860
  } = core_.VxeUI;
2861
- const log_version = `table v${"3.15.10"}`;
2861
+ const log_version = `table v${"3.15.12"}`;
2862
2862
  const warnLog = log_log.create('warn', log_version);
2863
2863
  const errLog = log_log.create('error', log_version);
2864
2864
  ;// CONCATENATED MODULE: ./packages/table/src/columnInfo.ts
@@ -3101,22 +3101,18 @@ const convertHeaderColumnToRows = originColumns => {
3101
3101
  };
3102
3102
  function restoreScrollLocation($xeTable, scrollLeft, scrollTop) {
3103
3103
  const internalData = $xeTable;
3104
- return $xeTable.clearScroll().then(() => {
3105
- if (scrollLeft || scrollTop) {
3106
- // 重置最后滚动状态
3107
- internalData.lastScrollLeft = 0;
3108
- internalData.lastScrollTop = 0;
3109
- internalData.intoRunScroll = false;
3110
- internalData.inVirtualScroll = false;
3111
- internalData.inWheelScroll = false;
3112
- internalData.inHeaderScroll = false;
3113
- internalData.inBodyScroll = false;
3114
- internalData.inFooterScroll = false;
3115
- internalData.scrollRenderType = '';
3116
- // 还原滚动状态
3117
- return $xeTable.scrollTo(scrollLeft, scrollTop);
3118
- }
3119
- });
3104
+ if (scrollLeft || scrollTop) {
3105
+ internalData.intoRunScroll = false;
3106
+ internalData.inVirtualScroll = false;
3107
+ internalData.inWheelScroll = false;
3108
+ internalData.inHeaderScroll = false;
3109
+ internalData.inBodyScroll = false;
3110
+ internalData.inFooterScroll = false;
3111
+ internalData.scrollRenderType = '';
3112
+ // 还原滚动状态
3113
+ return $xeTable.scrollTo(scrollLeft, scrollTop);
3114
+ }
3115
+ return $xeTable.$nextTick();
3120
3116
  }
3121
3117
  function toTreePathSeq(path) {
3122
3118
  return path.map((num, i) => i % 2 === 0 ? Number(num) + 1 : '.').join('');
@@ -13786,10 +13782,10 @@ const Methods = {
13786
13782
  if (!actived.args || evnt.currentTarget !== actived.args.cell) {
13787
13783
  if (editOpts.mode === 'row') {
13788
13784
  checkValidate($xeTable, 'blur').catch(e => e).then(() => {
13789
- this.handleEdit(params, evnt).then(() => checkValidate($xeTable, 'change')).catch(e => e);
13785
+ $xeTable.handleEdit(params, evnt).then(() => checkValidate($xeTable, 'change')).catch(e => e);
13790
13786
  });
13791
13787
  } else if (editOpts.mode === 'cell') {
13792
- this.handleEdit(params, evnt).then(() => checkValidate($xeTable, 'change')).catch(e => e);
13788
+ $xeTable.handleEdit(params, evnt).then(() => checkValidate($xeTable, 'change')).catch(e => e);
13793
13789
  }
13794
13790
  }
13795
13791
  }
@@ -14784,9 +14780,7 @@ const Methods = {
14784
14780
  },
14785
14781
  sort(sortConfs, sortOrder) {
14786
14782
  const $xeTable = this;
14787
- const {
14788
- sortOpts
14789
- } = this;
14783
+ const sortOpts = $xeTable.computeSortOpts;
14790
14784
  const {
14791
14785
  multiple,
14792
14786
  remote,
@@ -14806,7 +14800,7 @@ const Methods = {
14806
14800
  if (sortConfs.length) {
14807
14801
  let firstSortColumn;
14808
14802
  if (!multiple) {
14809
- clearAllSort(this);
14803
+ clearAllSort($xeTable);
14810
14804
  }
14811
14805
  (multiple ? sortConfs : [sortConfs[0]]).forEach((confs, index) => {
14812
14806
  let {
@@ -14815,14 +14809,14 @@ const Methods = {
14815
14809
  } = confs;
14816
14810
  let column = field;
14817
14811
  if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(field)) {
14818
- column = this.getColumnByField(field);
14812
+ column = $xeTable.getColumnByField(field);
14819
14813
  }
14820
14814
  if (column && (column.sortable || column.remoteSort)) {
14821
14815
  if (!firstSortColumn) {
14822
14816
  firstSortColumn = column;
14823
14817
  }
14824
- if (orders.indexOf(order) === -1) {
14825
- order = getNextSortOrder(this, column);
14818
+ if (orders && orders.indexOf(order) === -1) {
14819
+ order = getNextSortOrder($xeTable, column);
14826
14820
  }
14827
14821
  if (column.order !== order) {
14828
14822
  column.order = order;
@@ -14832,14 +14826,15 @@ const Methods = {
14832
14826
  });
14833
14827
  // 如果是服务端排序,则跳过本地排序处理
14834
14828
  if (!remote || firstSortColumn && firstSortColumn.remoteSort) {
14835
- this.handleTableData(true);
14829
+ $xeTable.handleTableData(true);
14836
14830
  }
14837
- return this.$nextTick().then(() => {
14838
- this.updateCellAreas();
14831
+ return $xeTable.$nextTick().then(() => {
14832
+ updateRowOffsetTop($xeTable);
14833
+ $xeTable.updateCellAreas();
14839
14834
  return updateStyle($xeTable);
14840
14835
  });
14841
14836
  }
14842
- return this.$nextTick();
14837
+ return $xeTable.$nextTick();
14843
14838
  },
14844
14839
  setSort(sortConfs, isUpdate) {
14845
14840
  const $xeTable = this;
@@ -14871,7 +14866,7 @@ const Methods = {
14871
14866
  firstColumn = column;
14872
14867
  }
14873
14868
  if (column && column.sortable) {
14874
- if (orders.indexOf(order) === -1) {
14869
+ if (orders && orders.indexOf(order) === -1) {
14875
14870
  order = getNextSortOrder($xeTable, column);
14876
14871
  }
14877
14872
  if (column.order !== order) {
@@ -14887,6 +14882,7 @@ const Methods = {
14887
14882
  $xeTable.handleColumnSortEvent(new Event('click'), firstColumn);
14888
14883
  }
14889
14884
  return $xeTable.$nextTick().then(() => {
14885
+ updateRowOffsetTop($xeTable);
14890
14886
  $xeTable.updateCellAreas();
14891
14887
  return updateStyle($xeTable);
14892
14888
  });
@@ -14900,21 +14896,22 @@ const Methods = {
14900
14896
  */
14901
14897
  clearSort(fieldOrColumn) {
14902
14898
  const $xeTable = this;
14903
- const {
14904
- sortOpts
14905
- } = this;
14899
+ const sortOpts = $xeTable.computeSortOpts;
14906
14900
  if (fieldOrColumn) {
14907
- const column = handleFieldOrColumn(this, fieldOrColumn);
14901
+ const column = handleFieldOrColumn($xeTable, fieldOrColumn);
14908
14902
  if (column) {
14909
14903
  column.order = null;
14910
14904
  }
14911
14905
  } else {
14912
- clearAllSort(this);
14906
+ clearAllSort($xeTable);
14913
14907
  }
14914
14908
  if (!sortOpts.remote) {
14915
- this.handleTableData(true);
14909
+ $xeTable.handleTableData(true);
14916
14910
  }
14917
- return this.$nextTick().then(() => updateStyle($xeTable));
14911
+ return $xeTable.$nextTick().then(() => {
14912
+ updateRowOffsetTop($xeTable);
14913
+ return updateStyle($xeTable);
14914
+ });
14918
14915
  },
14919
14916
  // 在 v3 中废弃
14920
14917
  getSortColumn() {
@@ -16491,54 +16488,44 @@ const Methods = {
16491
16488
  */
16492
16489
  scrollTo(scrollLeft, scrollTop) {
16493
16490
  const $xeTable = this;
16491
+ const reactData = $xeTable;
16494
16492
  const internalData = $xeTable;
16495
16493
  const {
16496
- $refs
16497
- } = this;
16498
- const {
16499
- refTableBody,
16500
- refTableHeader,
16501
- leftBody,
16502
- rightBody,
16503
- refTableFooter
16504
- } = $refs;
16505
- const tableBodyElem = refTableBody ? refTableBody.$el : null;
16506
- const leftBodyElem = leftBody ? leftBody.$el : null;
16507
- const rightBodyElem = rightBody ? rightBody.$el : null;
16508
- const tableHeaderElem = refTableHeader ? refTableHeader.$el : null;
16509
- const tableFooterElem = refTableFooter ? refTableFooter.$el : null;
16494
+ elemStore
16495
+ } = internalData;
16496
+ const headerScrollElem = getRefElem(elemStore['main-header-scroll']);
16497
+ const bodyScrollElem = getRefElem(elemStore['main-body-scroll']);
16498
+ const footerScrollElem = getRefElem(elemStore['main-footer-scroll']);
16499
+ const leftScrollElem = getRefElem(elemStore['left-body-scroll']);
16500
+ const rightScrollElem = getRefElem(elemStore['right-body-scroll']);
16501
+ const xHandleEl = $xeTable.$refs.refScrollXHandleElem;
16502
+ const yHandleEl = $xeTable.$refs.refScrollYHandleElem;
16510
16503
  internalData.intoRunScroll = true;
16511
16504
  if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(scrollLeft)) {
16512
- const xHandleEl = $xeTable.$refs.refScrollXHandleElem;
16513
- if (xHandleEl) {
16514
- setScrollLeft(xHandleEl, scrollLeft);
16515
- } else {
16516
- setScrollLeft(tableBodyElem, scrollLeft);
16517
- setScrollLeft(tableHeaderElem, scrollLeft);
16518
- setScrollLeft(tableFooterElem, scrollLeft);
16519
- }
16505
+ setScrollLeft(xHandleEl, scrollLeft);
16506
+ setScrollLeft(bodyScrollElem, scrollLeft);
16507
+ setScrollLeft(headerScrollElem, scrollLeft);
16508
+ setScrollLeft(footerScrollElem, scrollLeft);
16509
+ loadScrollXData($xeTable);
16520
16510
  }
16521
16511
  if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(scrollTop)) {
16522
- const yHandleEl = $xeTable.$refs.refScrollYHandleElem;
16523
- if (yHandleEl) {
16524
- setScrollTop(yHandleEl, scrollTop);
16525
- } else {
16526
- setScrollTop(tableBodyElem, scrollTop);
16527
- setScrollTop(leftBodyElem, scrollTop);
16528
- setScrollTop(rightBodyElem, scrollTop);
16529
- }
16512
+ setScrollTop(yHandleEl, scrollTop);
16513
+ setScrollTop(bodyScrollElem, scrollTop);
16514
+ setScrollTop(leftScrollElem, scrollTop);
16515
+ setScrollTop(rightScrollElem, scrollTop);
16516
+ loadScrollYData($xeTable);
16530
16517
  }
16531
- if (this.scrollXLoad || this.scrollYLoad) {
16518
+ if (reactData.scrollXLoad || reactData.scrollYLoad) {
16532
16519
  return new Promise(resolve => {
16533
16520
  setTimeout(() => {
16534
16521
  $xeTable.$nextTick(() => {
16535
16522
  internalData.intoRunScroll = false;
16536
16523
  resolve();
16537
16524
  });
16538
- });
16525
+ }, 30);
16539
16526
  });
16540
16527
  }
16541
- return this.$nextTick();
16528
+ return $xeTable.$nextTick();
16542
16529
  },
16543
16530
  /**
16544
16531
  * 如果有滚动条,则滚动到对应的行
@@ -16547,6 +16534,7 @@ const Methods = {
16547
16534
  */
16548
16535
  scrollToRow(row, fieldOrColumn) {
16549
16536
  const $xeTable = this;
16537
+ const props = $xeTable;
16550
16538
  const reactData = $xeTable;
16551
16539
  const {
16552
16540
  isAllOverflow,
@@ -16555,10 +16543,10 @@ const Methods = {
16555
16543
  } = reactData;
16556
16544
  const rest = [];
16557
16545
  if (row) {
16558
- if (this.treeConfig) {
16559
- rest.push(this.scrollToTreeRow(row));
16546
+ if (props.treeConfig) {
16547
+ rest.push($xeTable.scrollToTreeRow(row));
16560
16548
  } else {
16561
- rest.push(rowToVisible(this, row));
16549
+ rest.push(rowToVisible($xeTable, row));
16562
16550
  }
16563
16551
  }
16564
16552
  if (fieldOrColumn) {