vxe-table 3.10.7 → 3.10.9

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 (40) hide show
  1. package/es/style.css +1 -1
  2. package/es/table/module/custom/panel.js +3 -2
  3. package/es/table/src/body.js +4 -8
  4. package/es/table/src/cell.js +7 -3
  5. package/es/table/src/footer.js +2 -4
  6. package/es/table/src/header.js +2 -2
  7. package/es/table/src/methods.js +206 -79
  8. package/es/ui/index.js +1 -1
  9. package/es/ui/src/log.js +1 -1
  10. package/lib/index.umd.js +225 -100
  11. package/lib/index.umd.min.js +1 -1
  12. package/lib/style.css +1 -1
  13. package/lib/table/module/custom/panel.js +2 -1
  14. package/lib/table/module/custom/panel.min.js +1 -1
  15. package/lib/table/src/body.js +4 -8
  16. package/lib/table/src/body.min.js +1 -1
  17. package/lib/table/src/cell.js +10 -3
  18. package/lib/table/src/cell.min.js +1 -1
  19. package/lib/table/src/footer.js +2 -4
  20. package/lib/table/src/footer.min.js +1 -1
  21. package/lib/table/src/header.js +2 -2
  22. package/lib/table/src/methods.js +204 -81
  23. package/lib/table/src/methods.min.js +1 -1
  24. package/lib/ui/index.js +1 -1
  25. package/lib/ui/index.min.js +1 -1
  26. package/lib/ui/src/log.js +1 -1
  27. package/lib/ui/src/log.min.js +1 -1
  28. package/package.json +2 -2
  29. package/packages/table/module/custom/panel.ts +5 -2
  30. package/packages/table/src/body.ts +4 -8
  31. package/packages/table/src/cell.ts +9 -5
  32. package/packages/table/src/footer.ts +2 -4
  33. package/packages/table/src/header.ts +2 -2
  34. package/packages/table/src/methods.ts +210 -77
  35. /package/es/{iconfont.1731028570313.ttf → iconfont.1731143527990.ttf} +0 -0
  36. /package/es/{iconfont.1731028570313.woff → iconfont.1731143527990.woff} +0 -0
  37. /package/es/{iconfont.1731028570313.woff2 → iconfont.1731143527990.woff2} +0 -0
  38. /package/lib/{iconfont.1731028570313.ttf → iconfont.1731143527990.ttf} +0 -0
  39. /package/lib/{iconfont.1731028570313.woff → iconfont.1731143527990.woff} +0 -0
  40. /package/lib/{iconfont.1731028570313.woff2 → iconfont.1731143527990.woff2} +0 -0
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.10.7";
2223
+ const version = "3.10.9";
2224
2224
  core_.VxeUI.version = version;
2225
2225
  core_.VxeUI.tableVersion = version;
2226
2226
  core_.VxeUI.setConfig({
@@ -2769,7 +2769,7 @@ function isNodeElement(elem) {
2769
2769
  const {
2770
2770
  log: log_log
2771
2771
  } = core_.VxeUI;
2772
- const log_version = `table v${"3.10.7"}`;
2772
+ const log_version = `table v${"3.10.9"}`;
2773
2773
  const warnLog = log_log.create('warn', log_version);
2774
2774
  const errLog = log_log.create('error', log_version);
2775
2775
  ;// CONCATENATED MODULE: ./packages/table/src/columnInfo.ts
@@ -3545,23 +3545,30 @@ function renderCellBaseVNs(h, params, content) {
3545
3545
  const {
3546
3546
  $table,
3547
3547
  column,
3548
- row
3548
+ row,
3549
+ level
3549
3550
  } = params;
3550
3551
  const {
3551
3552
  dragSort
3552
3553
  } = column;
3553
- const vns = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(content) ? content : [content];
3554
+ const tableProps = $table;
3555
+ const {
3556
+ treeConfig
3557
+ } = tableProps;
3554
3558
  const rowOpts = $table.computeRowOpts;
3555
3559
  const dragOpts = $table.computeDragOpts;
3556
3560
  const {
3557
3561
  showRowIcon,
3558
3562
  rowVisibleMethod
3559
3563
  } = dragOpts;
3564
+ const vns = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(content) ? content : [content];
3560
3565
  if (dragSort && rowOpts.drag && showRowIcon && (!rowVisibleMethod || rowVisibleMethod({
3561
3566
  row,
3562
3567
  column
3563
3568
  }))) {
3564
- vns.unshift(renderCellDragIcon(h, params));
3569
+ if (!treeConfig || !level) {
3570
+ vns.unshift(renderCellDragIcon(h, params));
3571
+ }
3565
3572
  }
3566
3573
  return vns;
3567
3574
  }
@@ -5147,6 +5154,16 @@ function clearRowDropOrigin($xeTable) {
5147
5154
  });
5148
5155
  }
5149
5156
  }
5157
+ function updateRowDropOrigin($xeTable, row) {
5158
+ const el = $xeTable.$el;
5159
+ if (el) {
5160
+ const clss = 'row--drag-origin';
5161
+ const rowid = getRowid($xeTable, row);
5162
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll(`[rowid="${rowid}"]`), elem => {
5163
+ addClass(elem, clss);
5164
+ });
5165
+ }
5166
+ }
5150
5167
  function clearRowDropTarget($xeTable) {
5151
5168
  const el = $xeTable.$el;
5152
5169
  if (el) {
@@ -5156,6 +5173,17 @@ function clearRowDropTarget($xeTable) {
5156
5173
  });
5157
5174
  }
5158
5175
  }
5176
+ function updateRowDropTarget($xeTable, row, dragPos) {
5177
+ const el = $xeTable.$el;
5178
+ if (el) {
5179
+ const clss = 'row--drag-active-target';
5180
+ const rowid = getRowid($xeTable, row);
5181
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll(`[rowid="${rowid}"]`), elem => {
5182
+ addClass(elem, clss);
5183
+ elem.setAttribute('drag-pos', dragPos);
5184
+ });
5185
+ }
5186
+ }
5159
5187
  function showRowDropTip(evnt, $xeTable) {
5160
5188
  const rdTipEl = $xeTable.$refs.refRowDragTipElem;
5161
5189
  if (!rdTipEl) {
@@ -6919,85 +6947,132 @@ const Methods = {
6919
6947
  * 设置为固定列
6920
6948
  */
6921
6949
  setColumnFixed(fieldOrColumn, fixed) {
6922
- const {
6923
- isMaxFixedColumn,
6924
- columnOpts
6925
- } = this;
6926
- const column = handleFieldOrColumn(this, fieldOrColumn);
6927
- const targetColumn = getRootColumn(this, column);
6928
- if (targetColumn && targetColumn.fixed !== fixed) {
6929
- // 是否超过最大固定列数量
6930
- if (!targetColumn.fixed && isMaxFixedColumn) {
6931
- if (core_.VxeUI.modal) {
6932
- core_.VxeUI.modal.message({
6933
- status: 'error',
6934
- content: methods_getI18n('vxe.table.maxFixedCol', [columnOpts.maxFixedSize])
6935
- });
6950
+ const $xeTable = this;
6951
+ let status = false;
6952
+ const cols = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(fieldOrColumn) ? fieldOrColumn : [fieldOrColumn];
6953
+ const columnOpts = $xeTable.computeColumnOpts;
6954
+ const isMaxFixedColumn = $xeTable.computeIsMaxFixedColumn;
6955
+ for (let i = 0; i < cols.length; i++) {
6956
+ const item = cols[i];
6957
+ const column = handleFieldOrColumn($xeTable, item);
6958
+ const targetColumn = getRootColumn($xeTable, column);
6959
+ if (targetColumn && targetColumn.fixed !== fixed) {
6960
+ // 是否超过最大固定列数量
6961
+ if (!targetColumn.fixed && isMaxFixedColumn) {
6962
+ if (core_.VxeUI.modal) {
6963
+ core_.VxeUI.modal.message({
6964
+ status: 'error',
6965
+ content: methods_getI18n('vxe.table.maxFixedCol', [columnOpts.maxFixedSize])
6966
+ });
6967
+ }
6968
+ return $xeTable.$nextTick();
6969
+ }
6970
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree([targetColumn], column => {
6971
+ column.fixed = fixed;
6972
+ });
6973
+ $xeTable.saveCustomStore('update:fixed');
6974
+ if (!status) {
6975
+ status = true;
6936
6976
  }
6937
- return this.$nextTick();
6938
6977
  }
6939
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree([targetColumn], column => {
6940
- column.fixed = fixed;
6941
- });
6942
- this.saveCustomStore('update:fixed');
6943
- return this.refreshColumn();
6944
6978
  }
6945
- return this.$nextTick();
6979
+ if (status) {
6980
+ return $xeTable.refreshColumn();
6981
+ }
6982
+ return $xeTable.$nextTick();
6946
6983
  },
6947
6984
  /**
6948
6985
  * 取消指定固定列
6949
6986
  */
6950
6987
  clearColumnFixed(fieldOrColumn) {
6951
- const column = handleFieldOrColumn(this, fieldOrColumn);
6952
- const targetColumn = getRootColumn(this, column);
6953
- if (targetColumn && targetColumn.fixed) {
6954
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree([targetColumn], column => {
6955
- column.fixed = null;
6956
- });
6957
- this.saveCustomStore('update:fixed');
6958
- return this.refreshColumn();
6988
+ const $xeTable = this;
6989
+ let status = false;
6990
+ const cols = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(fieldOrColumn) ? fieldOrColumn : [fieldOrColumn];
6991
+ cols.forEach(item => {
6992
+ const column = handleFieldOrColumn($xeTable, item);
6993
+ const targetColumn = getRootColumn($xeTable, column);
6994
+ if (targetColumn && targetColumn.fixed) {
6995
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree([targetColumn], column => {
6996
+ column.fixed = null;
6997
+ });
6998
+ $xeTable.saveCustomStore('update:fixed');
6999
+ if (!status) {
7000
+ status = true;
7001
+ }
7002
+ }
7003
+ });
7004
+ if (status) {
7005
+ return $xeTable.refreshColumn();
6959
7006
  }
6960
- return this.$nextTick();
7007
+ return $xeTable.$nextTick();
6961
7008
  },
6962
7009
  /**
6963
7010
  * 隐藏指定列
6964
7011
  */
6965
7012
  hideColumn(fieldOrColumn) {
6966
- const column = handleFieldOrColumn(this, fieldOrColumn);
6967
- if (column && column.visible) {
6968
- column.visible = false;
6969
- return this.handleCustom();
7013
+ const $xeTable = this;
7014
+ let status = false;
7015
+ const cols = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(fieldOrColumn) ? fieldOrColumn : [fieldOrColumn];
7016
+ cols.forEach(item => {
7017
+ const column = handleFieldOrColumn($xeTable, item);
7018
+ if (column && column.visible) {
7019
+ column.visible = false;
7020
+ if (!status) {
7021
+ status = true;
7022
+ }
7023
+ }
7024
+ });
7025
+ if (status) {
7026
+ return $xeTable.handleCustom();
6970
7027
  }
6971
- return this.$nextTick();
7028
+ return $xeTable.$nextTick();
6972
7029
  },
6973
7030
  /**
6974
7031
  * 显示指定列
6975
7032
  */
6976
7033
  showColumn(fieldOrColumn) {
6977
- const column = handleFieldOrColumn(this, fieldOrColumn);
6978
- if (column && !column.visible) {
6979
- column.visible = true;
6980
- return this.handleCustom();
7034
+ const $xeTable = this;
7035
+ let status = false;
7036
+ const cols = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(fieldOrColumn) ? fieldOrColumn : [fieldOrColumn];
7037
+ cols.forEach(item => {
7038
+ const column = handleFieldOrColumn($xeTable, item);
7039
+ if (column && !column.visible) {
7040
+ column.visible = true;
7041
+ if (!status) {
7042
+ status = true;
7043
+ }
7044
+ }
7045
+ });
7046
+ if (status) {
7047
+ return $xeTable.handleCustom();
6981
7048
  }
6982
- return this.$nextTick();
7049
+ return $xeTable.$nextTick();
6983
7050
  },
6984
7051
  setColumnWidth(fieldOrColumn, width) {
6985
- const column = handleFieldOrColumn(this, fieldOrColumn);
6986
- if (column) {
6987
- const colWidth = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toInteger(width);
6988
- let rdWidth = colWidth;
6989
- if (isScale(width)) {
6990
- const {
6991
- tableBody
6992
- } = this.$refs;
6993
- const tableBodyElem = tableBody ? tableBody.$el : null;
6994
- const bodyWidth = tableBodyElem ? tableBodyElem.clientWidth - 1 : 0;
6995
- rdWidth = Math.floor(colWidth * bodyWidth);
7052
+ const $xeTable = this;
7053
+ let status = false;
7054
+ const cols = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(fieldOrColumn) ? fieldOrColumn : [fieldOrColumn];
7055
+ cols.forEach(item => {
7056
+ const column = handleFieldOrColumn($xeTable, item);
7057
+ if (column) {
7058
+ const colWidth = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toInteger(width);
7059
+ let rdWidth = colWidth;
7060
+ if (isScale(width)) {
7061
+ const tableBody = $xeTable.$refs.tableBody;
7062
+ const bodyElem = tableBody ? tableBody.$el : null;
7063
+ const bodyWidth = bodyElem ? bodyElem.clientWidth - 1 : 0;
7064
+ rdWidth = Math.floor(colWidth * bodyWidth);
7065
+ }
7066
+ column.resizeWidth = rdWidth;
7067
+ if (!status) {
7068
+ status = true;
7069
+ }
6996
7070
  }
6997
- column.resizeWidth = rdWidth;
6998
- return this.refreshColumn();
7071
+ });
7072
+ if (status) {
7073
+ return $xeTable.refreshColumn();
6999
7074
  }
7000
- return this.$nextTick();
7075
+ return $xeTable.$nextTick();
7001
7076
  },
7002
7077
  getColumnWidth(fieldOrColumn) {
7003
7078
  const column = handleFieldOrColumn(this, fieldOrColumn);
@@ -10252,7 +10327,9 @@ const Methods = {
10252
10327
  } = reactData;
10253
10328
  const {
10254
10329
  afterFullData,
10330
+ afterTreeFullData,
10255
10331
  tableFullData,
10332
+ tableFullTreeData,
10256
10333
  prevDragRow,
10257
10334
  prevDragPos
10258
10335
  } = internalData;
@@ -10267,18 +10344,35 @@ const Methods = {
10267
10344
  return;
10268
10345
  }
10269
10346
  const dragOffsetIndex = prevDragPos === 'bottom' ? 1 : 0;
10270
- // 移出源位置
10271
- const oafIndex = $xeTable.findRowIndexOf(afterFullData, dragRow);
10272
- const otfIndex = $xeTable.findRowIndexOf(tableFullData, dragRow);
10273
- afterFullData.splice(oafIndex, 1);
10274
- tableFullData.splice(otfIndex, 1);
10275
- // 插新位置
10276
- const pafIndex = $xeTable.findRowIndexOf(afterFullData, prevDragRow);
10277
- const ptfIndex = $xeTable.findRowIndexOf(tableFullData, prevDragRow);
10278
- const nafIndex = pafIndex + dragOffsetIndex;
10279
- const ntfIndex = ptfIndex + dragOffsetIndex;
10280
- afterFullData.splice(nafIndex, 0, dragRow);
10281
- tableFullData.splice(ntfIndex, 0, dragRow);
10347
+ let oafIndex = -1;
10348
+ let nafIndex = -1;
10349
+ if (treeConfig) {
10350
+ // 移出源位置
10351
+ oafIndex = $xeTable.findRowIndexOf(afterTreeFullData, dragRow);
10352
+ const otfIndex = $xeTable.findRowIndexOf(tableFullTreeData, dragRow);
10353
+ afterTreeFullData.splice(oafIndex, 1);
10354
+ tableFullTreeData.splice(otfIndex, 1);
10355
+ // 插新位置
10356
+ const pafIndex = $xeTable.findRowIndexOf(afterTreeFullData, prevDragRow);
10357
+ const ptfIndex = $xeTable.findRowIndexOf(tableFullTreeData, prevDragRow);
10358
+ nafIndex = pafIndex + dragOffsetIndex;
10359
+ const ntfIndex = ptfIndex + dragOffsetIndex;
10360
+ afterTreeFullData.splice(nafIndex, 0, dragRow);
10361
+ tableFullTreeData.splice(ntfIndex, 0, dragRow);
10362
+ } else {
10363
+ // 移出源位置
10364
+ oafIndex = $xeTable.findRowIndexOf(afterFullData, dragRow);
10365
+ const otfIndex = $xeTable.findRowIndexOf(tableFullData, dragRow);
10366
+ afterFullData.splice(oafIndex, 1);
10367
+ tableFullData.splice(otfIndex, 1);
10368
+ // 插新位置
10369
+ const pafIndex = $xeTable.findRowIndexOf(afterFullData, prevDragRow);
10370
+ const ptfIndex = $xeTable.findRowIndexOf(tableFullData, prevDragRow);
10371
+ nafIndex = pafIndex + dragOffsetIndex;
10372
+ const ntfIndex = ptfIndex + dragOffsetIndex;
10373
+ afterFullData.splice(nafIndex, 0, dragRow);
10374
+ tableFullData.splice(ntfIndex, 0, dragRow);
10375
+ }
10282
10376
  reactData.isDragRowMove = true;
10283
10377
  $xeTable.cacheRowMap();
10284
10378
  $xeTable.updateScrollYStatus();
@@ -10330,8 +10424,7 @@ const Methods = {
10330
10424
  } = reactData;
10331
10425
  const offsetY = evnt.clientY - trEl.getBoundingClientRect().y;
10332
10426
  const dragPos = offsetY < trEl.clientHeight / 2 ? 'top' : 'bottom';
10333
- addClass(trEl, 'row--drag-active-target');
10334
- trEl.setAttribute('drag-pos', dragPos);
10427
+ updateRowDropTarget($xeTable, row, dragPos);
10335
10428
  internalData.prevDragRow = row;
10336
10429
  internalData.prevDragPos = dragPos;
10337
10430
  $xeTable.dispatchEvent('row-dragover', {
@@ -10366,7 +10459,7 @@ const Methods = {
10366
10459
  }
10367
10460
  reactData.dragRow = row;
10368
10461
  trEl.draggable = true;
10369
- addClass(trEl, 'row--drag-origin');
10462
+ updateRowDropOrigin($xeTable, row);
10370
10463
  showRowDropTip(evnt, $xeTable);
10371
10464
  updateRowDropTipContent($xeTable, tdEl);
10372
10465
  $xeTable.dispatchEvent('row-dragstart', params, evnt);
@@ -11461,7 +11554,7 @@ const Methods = {
11461
11554
  }
11462
11555
  this.closeTooltip();
11463
11556
  },
11464
- handleScrollEvent(evnt, isRollY, isRollX, params) {
11557
+ handleScrollEvent(evnt, isRollY, isRollX, scrollTop, scrollLeft, params) {
11465
11558
  const $xeTable = this;
11466
11559
  const props = $xeTable;
11467
11560
  const {
@@ -11488,13 +11581,35 @@ const Methods = {
11488
11581
  const bodyWidth = bodyElem ? bodyElem.clientWidth : 0;
11489
11582
  const scrollHeight = bodyElem ? bodyElem.scrollHeight : 0;
11490
11583
  const scrollWidth = bodyElem ? bodyElem.scrollWidth : 0;
11584
+ let isTop = false;
11585
+ let isBottom = false;
11586
+ let isLeft = false;
11587
+ let isRight = false;
11588
+ if (isRollX) {
11589
+ isLeft = scrollLeft <= 0;
11590
+ if (!isTop) {
11591
+ isRight = scrollLeft + bodyWidth >= scrollWidth;
11592
+ }
11593
+ $xeTable.checkScrolling();
11594
+ } else {
11595
+ isTop = scrollTop <= 0;
11596
+ if (!isTop) {
11597
+ isBottom = scrollTop + bodyHeight >= scrollHeight;
11598
+ }
11599
+ }
11491
11600
  const evntParams = {
11601
+ scrollTop,
11602
+ scrollLeft,
11492
11603
  bodyHeight,
11493
11604
  bodyWidth,
11494
11605
  scrollHeight,
11495
11606
  scrollWidth,
11496
11607
  isX: isRollX,
11497
11608
  isY: isRollY,
11609
+ isTop,
11610
+ isBottom,
11611
+ isLeft,
11612
+ isRight,
11498
11613
  ...params
11499
11614
  };
11500
11615
  $xeTable.dispatchEvent('scroll', evntParams, evnt);
@@ -11552,11 +11667,9 @@ const Methods = {
11552
11667
  $xeTable.lastScrollTime = Date.now();
11553
11668
  $xeTable.handleSyncScrollX(scrollLeft);
11554
11669
  $xeTable.triggerScrollXEvent(evnt);
11555
- $xeTable.handleScrollEvent(evnt, isRollY, isRollX, {
11670
+ $xeTable.handleScrollEvent(evnt, isRollY, isRollX, scrollTop, scrollLeft, {
11556
11671
  type: 'table',
11557
- fixed: '',
11558
- scrollTop,
11559
- scrollLeft
11672
+ fixed: ''
11560
11673
  });
11561
11674
  },
11562
11675
  debounceScrollYCalculate: external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().debounce(function () {
@@ -11592,11 +11705,9 @@ const Methods = {
11592
11705
  $xeTable.lastScrollTime = Date.now();
11593
11706
  $xeTable.handleSyncScrollY(scrollTop);
11594
11707
  $xeTable.triggerScrollYEvent(evnt);
11595
- $xeTable.handleScrollEvent(evnt, isRollY, isRollX, {
11708
+ $xeTable.handleScrollEvent(evnt, isRollY, isRollX, scrollTop, scrollLeft, {
11596
11709
  type: 'table',
11597
- fixed: '',
11598
- scrollTop,
11599
- scrollLeft
11710
+ fixed: ''
11600
11711
  });
11601
11712
  },
11602
11713
  /**
@@ -11843,22 +11954,41 @@ const Methods = {
11843
11954
  * @param {Number} scrollTop 上距离
11844
11955
  */
11845
11956
  scrollTo(scrollLeft, scrollTop) {
11957
+ const $xeTable = this;
11846
11958
  const {
11847
11959
  $refs
11848
11960
  } = this;
11849
11961
  const {
11850
11962
  tableBody,
11963
+ tableHeader,
11964
+ leftBody,
11851
11965
  rightBody,
11852
11966
  tableFooter
11853
11967
  } = $refs;
11854
11968
  const tableBodyElem = tableBody ? tableBody.$el : null;
11969
+ const leftBodyElem = leftBody ? leftBody.$el : null;
11855
11970
  const rightBodyElem = rightBody ? rightBody.$el : null;
11971
+ const tableHeaderElem = tableHeader ? tableHeader.$el : null;
11856
11972
  const tableFooterElem = tableFooter ? tableFooter.$el : null;
11857
11973
  if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(scrollLeft)) {
11858
- setScrollLeft(tableFooterElem || tableBodyElem, scrollLeft);
11974
+ const xHandleEl = $xeTable.$refs.refScrollXHandleElem;
11975
+ if (xHandleEl) {
11976
+ setScrollLeft(xHandleEl, scrollLeft);
11977
+ } else {
11978
+ setScrollLeft(tableBodyElem, scrollLeft);
11979
+ setScrollLeft(tableHeaderElem, scrollLeft);
11980
+ setScrollLeft(tableFooterElem, scrollLeft);
11981
+ }
11859
11982
  }
11860
11983
  if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(scrollTop)) {
11861
- setScrollTop(rightBodyElem || tableBodyElem, scrollTop);
11984
+ const yHandleEl = $xeTable.$refs.refScrollYHandleElem;
11985
+ if (yHandleEl) {
11986
+ setScrollTop(yHandleEl, scrollTop);
11987
+ } else {
11988
+ setScrollTop(tableBodyElem, scrollTop);
11989
+ setScrollTop(leftBodyElem, scrollTop);
11990
+ setScrollTop(rightBodyElem, scrollTop);
11991
+ }
11862
11992
  }
11863
11993
  if (this.scrollXLoad || this.scrollYLoad) {
11864
11994
  return new Promise(resolve => setTimeout(() => resolve(this.$nextTick()), 50));
@@ -13000,11 +13130,9 @@ function renderRows(h, _vm, $xeTable, fixedType, tableData, tableColumn) {
13000
13130
  setScrollTop(leftElem, scrollTop);
13001
13131
  setScrollTop(rightElem, scrollTop);
13002
13132
  }
13003
- $xeTable.handleScrollEvent(evnt, isRollY, isRollX, {
13133
+ $xeTable.handleScrollEvent(evnt, isRollY, isRollX, scrollTop, scrollLeft, {
13004
13134
  type: renderType,
13005
- fixed: fixedType,
13006
- scrollTop,
13007
- scrollLeft
13135
+ fixed: fixedType
13008
13136
  });
13009
13137
  }
13010
13138
  if (xHandleEl) {
@@ -13014,11 +13142,9 @@ function renderRows(h, _vm, $xeTable, fixedType, tableData, tableColumn) {
13014
13142
  $xeTable.lastScrollLeft = scrollLeft;
13015
13143
  setScrollLeft(headerElem, scrollLeft);
13016
13144
  setScrollLeft(footerElem, scrollLeft);
13017
- $xeTable.handleScrollEvent(evnt, isRollY, isRollX, {
13145
+ $xeTable.handleScrollEvent(evnt, isRollY, isRollX, scrollTop, scrollLeft, {
13018
13146
  type: renderType,
13019
- fixed: fixedType,
13020
- scrollTop,
13021
- scrollLeft
13147
+ fixed: fixedType
13022
13148
  });
13023
13149
  }
13024
13150
  },
@@ -13230,7 +13356,7 @@ const cellType = 'header';
13230
13356
  tId,
13231
13357
  isGroup,
13232
13358
  visibleColumn,
13233
- resizable,
13359
+ resizable: allResizable,
13234
13360
  border,
13235
13361
  columnKey,
13236
13362
  headerRowClassName,
@@ -13401,7 +13527,7 @@ const cellType = 'header';
13401
13527
  /**
13402
13528
  * 列宽拖动
13403
13529
  */
13404
- !fixedHiddenColumn && !isColGroup && (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(column.resizable) ? column.resizable : columnOpts.resizable || resizable) ? h('div', {
13530
+ !fixedHiddenColumn && !isColGroup && (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(column.resizable) ? column.resizable : columnOpts.resizable || allResizable) ? h('div', {
13405
13531
  class: ['vxe-resizable', {
13406
13532
  'is--line': !border || border === 'none'
13407
13533
  }],
@@ -13872,11 +13998,9 @@ function mergeFooterMethod(mergeFooterList, _rowIndex, _columnIndex) {
13872
13998
  $xeTable.lastScrollTime = Date.now();
13873
13999
  setScrollLeft(headerElem, scrollLeft);
13874
14000
  setScrollLeft(bodyElem, scrollLeft);
13875
- $xeTable.handleScrollEvent(evnt, isRollY, isRollX, {
14001
+ $xeTable.handleScrollEvent(evnt, isRollY, isRollX, scrollTop, scrollLeft, {
13876
14002
  type: footer_renderType,
13877
- fixed: fixedType,
13878
- scrollTop,
13879
- scrollLeft
14003
+ fixed: fixedType
13880
14004
  });
13881
14005
  }
13882
14006
  }
@@ -14416,6 +14540,7 @@ const renderPopupPanel = (h, _vm) => {
14416
14540
  customStore
14417
14541
  } = _vm;
14418
14542
  const {
14543
+ resizable: allResizable,
14419
14544
  customOpts,
14420
14545
  customColumnList,
14421
14546
  columnOpts,
@@ -14550,7 +14675,7 @@ const renderPopupPanel = (h, _vm) => {
14550
14675
  }
14551
14676
  }, colTitle)]), allowResizable ? h('td', {
14552
14677
  class: 'vxe-table-custom-popup--column-item col--resizable'
14553
- }, [column.children && column.children.length ? h('span', '-') : VxeUINumberInputComponent ? h(VxeUINumberInputComponent, {
14678
+ }, [column.children && column.children.length || !(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(column.resizable) ? column.resizable : columnOpts.resizable || allResizable) ? h('span', '-') : VxeUINumberInputComponent ? h(VxeUINumberInputComponent, {
14554
14679
  props: {
14555
14680
  type: 'integer',
14556
14681
  disabled: isDisabled || isHidden,