vxe-table 4.8.8 → 4.8.10
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/es/style.css +1 -1
- package/es/table/src/body.js +4 -12
- package/es/table/src/emits.js +1 -0
- package/es/table/src/footer.js +2 -6
- package/es/table/src/table.js +198 -68
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +211 -90
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/src/body.js +4 -12
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/emits.js +1 -1
- package/lib/table/src/emits.min.js +1 -1
- package/lib/table/src/footer.js +2 -6
- package/lib/table/src/footer.min.js +1 -1
- package/lib/table/src/table.js +204 -71
- package/lib/table/src/table.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +2 -2
- package/packages/table/src/body.ts +4 -12
- package/packages/table/src/emits.ts +1 -0
- package/packages/table/src/footer.ts +2 -6
- package/packages/table/src/table.ts +198 -70
- /package/es/{iconfont.1731060581842.ttf → iconfont.1731289529100.ttf} +0 -0
- /package/es/{iconfont.1731060581842.woff → iconfont.1731289529100.woff} +0 -0
- /package/es/{iconfont.1731060581842.woff2 → iconfont.1731289529100.woff2} +0 -0
- /package/lib/{iconfont.1731060581842.ttf → iconfont.1731289529100.ttf} +0 -0
- /package/lib/{iconfont.1731060581842.woff → iconfont.1731289529100.woff} +0 -0
- /package/lib/{iconfont.1731060581842.woff2 → iconfont.1731289529100.woff2} +0 -0
package/lib/index.umd.js
CHANGED
|
@@ -1998,7 +1998,7 @@ function eqEmptyValue(cellValue) {
|
|
|
1998
1998
|
;// CONCATENATED MODULE: ./packages/ui/index.ts
|
|
1999
1999
|
|
|
2000
2000
|
|
|
2001
|
-
const version = "4.8.
|
|
2001
|
+
const version = "4.8.10";
|
|
2002
2002
|
core_.VxeUI.version = version;
|
|
2003
2003
|
core_.VxeUI.tableVersion = version;
|
|
2004
2004
|
core_.VxeUI.setConfig({
|
|
@@ -2389,7 +2389,7 @@ var es_array_push = __webpack_require__(4114);
|
|
|
2389
2389
|
const {
|
|
2390
2390
|
log: log_log
|
|
2391
2391
|
} = core_.VxeUI;
|
|
2392
|
-
const log_version = `table v${"4.8.
|
|
2392
|
+
const log_version = `table v${"4.8.10"}`;
|
|
2393
2393
|
const warnLog = log_log.create('warn', log_version);
|
|
2394
2394
|
const errLog = log_log.create('error', log_version);
|
|
2395
2395
|
;// CONCATENATED MODULE: ./packages/table/src/columnInfo.ts
|
|
@@ -5366,8 +5366,6 @@ const lineOffsetSizes = {
|
|
|
5366
5366
|
if (yHandleEl) {
|
|
5367
5367
|
yHandleEl.scrollTop = scrollTop;
|
|
5368
5368
|
} else if (isRollY) {
|
|
5369
|
-
tableInternalData.lastScrollTop = scrollTop;
|
|
5370
|
-
tableInternalData.lastScrollLeft = scrollLeft;
|
|
5371
5369
|
if (leftElem && fixedType === 'left') {
|
|
5372
5370
|
setScrollTop(bodyElem, scrollTop);
|
|
5373
5371
|
setScrollTop(rightElem, scrollTop);
|
|
@@ -5378,25 +5376,19 @@ const lineOffsetSizes = {
|
|
|
5378
5376
|
setScrollTop(leftElem, scrollTop);
|
|
5379
5377
|
setScrollTop(rightElem, scrollTop);
|
|
5380
5378
|
}
|
|
5381
|
-
$xeTable.handleScrollEvent(evnt, isRollY, isRollX, {
|
|
5379
|
+
$xeTable.handleScrollEvent(evnt, isRollY, isRollX, scrollTop, scrollLeft, {
|
|
5382
5380
|
type: renderType,
|
|
5383
|
-
fixed: fixedType
|
|
5384
|
-
scrollTop,
|
|
5385
|
-
scrollLeft
|
|
5381
|
+
fixed: fixedType
|
|
5386
5382
|
});
|
|
5387
5383
|
}
|
|
5388
5384
|
if (xHandleEl) {
|
|
5389
5385
|
xHandleEl.scrollLeft = scrollLeft;
|
|
5390
5386
|
} else if (isRollX) {
|
|
5391
|
-
tableInternalData.lastScrollTop = scrollTop;
|
|
5392
|
-
tableInternalData.lastScrollLeft = scrollLeft;
|
|
5393
5387
|
setScrollLeft(headerElem, scrollLeft);
|
|
5394
5388
|
setScrollLeft(footerElem, scrollLeft);
|
|
5395
|
-
$xeTable.handleScrollEvent(evnt, isRollY, isRollX, {
|
|
5389
|
+
$xeTable.handleScrollEvent(evnt, isRollY, isRollX, scrollTop, scrollLeft, {
|
|
5396
5390
|
type: renderType,
|
|
5397
|
-
fixed: fixedType
|
|
5398
|
-
scrollTop,
|
|
5399
|
-
scrollLeft
|
|
5391
|
+
fixed: fixedType
|
|
5400
5392
|
});
|
|
5401
5393
|
}
|
|
5402
5394
|
};
|
|
@@ -6182,15 +6174,11 @@ function mergeFooterMethod(mergeFooterList, _rowIndex, _columnIndex) {
|
|
|
6182
6174
|
const isRollX = true;
|
|
6183
6175
|
const isRollY = false;
|
|
6184
6176
|
const scrollTop = bodyElem.scrollTop;
|
|
6185
|
-
tableInternalData.lastScrollLeft = scrollLeft;
|
|
6186
|
-
tableReactData.lastScrollTime = Date.now();
|
|
6187
6177
|
setScrollLeft(headerElem, scrollLeft);
|
|
6188
6178
|
setScrollLeft(bodyElem, scrollLeft);
|
|
6189
|
-
$xeTable.handleScrollEvent(evnt, isRollY, isRollX, {
|
|
6179
|
+
$xeTable.handleScrollEvent(evnt, isRollY, isRollX, scrollTop, scrollLeft, {
|
|
6190
6180
|
type: footer_renderType,
|
|
6191
|
-
fixed: fixedType
|
|
6192
|
-
scrollTop,
|
|
6193
|
-
scrollLeft
|
|
6181
|
+
fixed: fixedType
|
|
6194
6182
|
});
|
|
6195
6183
|
}
|
|
6196
6184
|
};
|
|
@@ -6704,7 +6692,7 @@ const {
|
|
|
6704
6692
|
params: Object
|
|
6705
6693
|
});
|
|
6706
6694
|
;// CONCATENATED MODULE: ./packages/table/src/emits.ts
|
|
6707
|
-
/* harmony default export */ var emits = (['update:data', 'keydown-start', 'keydown', 'keydown-end', 'paste', 'copy', 'cut', 'current-change', 'radio-change', 'checkbox-change', 'checkbox-all', 'checkbox-range-start', 'checkbox-range-change', 'checkbox-range-end', 'checkbox-range-select', 'cell-click', 'cell-dblclick', 'cell-menu', 'cell-mouseenter', 'cell-mouseleave', 'cell-selected', 'cell-delete-value', 'cell-backspace-value', 'header-cell-click', 'header-cell-dblclick', 'header-cell-menu', 'footer-cell-click', 'footer-cell-dblclick', 'footer-cell-menu', 'clear-merge', 'sort-change', 'clear-sort', 'filter-change', 'filter-visible', 'clear-filter', 'resizable-change', 'toggle-row-expand', 'toggle-tree-expand', 'menu-click', 'edit-closed', 'row-dragstart', 'row-dragover', 'row-dragend', 'edit-actived', 'edit-activated', 'edit-disabled', 'valid-error', 'scroll', 'custom', 'change-fnr', 'open-fnr', 'show-fnr', 'hide-fnr', 'fnr-change', 'fnr-find', 'fnr-find-all', 'fnr-replace', 'fnr-replace-all', 'cell-area-copy', 'cell-area-cut', 'cell-area-paste', 'cell-area-merge', 'clear-cell-area-selection', 'clear-cell-area-merge', 'header-cell-area-selection', 'cell-area-selection-invalid', 'cell-area-selection-start', 'cell-area-selection-drag', 'cell-area-selection-end', 'cell-area-extension-start', 'cell-area-extension-drag', 'cell-area-extension-end', 'cell-area-selection-all-start', 'cell-area-selection-all-end', 'cell-area-arrows-start', 'cell-area-arrows-end', 'active-cell-change-start', 'active-cell-change-end']);
|
|
6695
|
+
/* harmony default export */ var emits = (['update:data', 'keydown-start', 'keydown', 'keydown-end', 'paste', 'copy', 'cut', 'current-change', 'radio-change', 'checkbox-change', 'checkbox-all', 'checkbox-range-start', 'checkbox-range-change', 'checkbox-range-end', 'checkbox-range-select', 'cell-click', 'cell-dblclick', 'cell-menu', 'cell-mouseenter', 'cell-mouseleave', 'cell-selected', 'cell-delete-value', 'cell-backspace-value', 'header-cell-click', 'header-cell-dblclick', 'header-cell-menu', 'footer-cell-click', 'footer-cell-dblclick', 'footer-cell-menu', 'clear-merge', 'sort-change', 'clear-sort', 'filter-change', 'filter-visible', 'clear-filter', 'resizable-change', 'toggle-row-expand', 'toggle-tree-expand', 'menu-click', 'edit-closed', 'row-dragstart', 'row-dragover', 'row-dragend', 'edit-actived', 'edit-activated', 'edit-disabled', 'valid-error', 'scroll', 'scroll-boundary', 'custom', 'change-fnr', 'open-fnr', 'show-fnr', 'hide-fnr', 'fnr-change', 'fnr-find', 'fnr-find-all', 'fnr-replace', 'fnr-replace-all', 'cell-area-copy', 'cell-area-cut', 'cell-area-paste', 'cell-area-merge', 'clear-cell-area-selection', 'clear-cell-area-merge', 'header-cell-area-selection', 'cell-area-selection-invalid', 'cell-area-selection-start', 'cell-area-selection-drag', 'cell-area-selection-end', 'cell-area-extension-start', 'cell-area-extension-drag', 'cell-area-extension-end', 'cell-area-selection-all-start', 'cell-area-selection-all-end', 'cell-area-arrows-start', 'cell-area-arrows-end', 'active-cell-change-start', 'active-cell-change-end']);
|
|
6708
6696
|
;// CONCATENATED MODULE: ./packages/table/module/custom/panel.ts
|
|
6709
6697
|
|
|
6710
6698
|
|
|
@@ -8911,9 +8899,29 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
|
|
|
8911
8899
|
const computeSXOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
|
|
8912
8900
|
return Object.assign({}, table_getConfig().table.scrollX, props.scrollX);
|
|
8913
8901
|
});
|
|
8902
|
+
const computeScrollXThreshold = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
|
|
8903
|
+
const sXOpts = computeSXOpts.value;
|
|
8904
|
+
const {
|
|
8905
|
+
threshold
|
|
8906
|
+
} = sXOpts;
|
|
8907
|
+
if (threshold) {
|
|
8908
|
+
return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(threshold);
|
|
8909
|
+
}
|
|
8910
|
+
return 0;
|
|
8911
|
+
});
|
|
8914
8912
|
const computeSYOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
|
|
8915
8913
|
return Object.assign({}, table_getConfig().table.scrollY, props.scrollY);
|
|
8916
8914
|
});
|
|
8915
|
+
const computeScrollYThreshold = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
|
|
8916
|
+
const sYOpts = computeSYOpts.value;
|
|
8917
|
+
const {
|
|
8918
|
+
threshold
|
|
8919
|
+
} = sYOpts;
|
|
8920
|
+
if (threshold) {
|
|
8921
|
+
return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(threshold);
|
|
8922
|
+
}
|
|
8923
|
+
return 0;
|
|
8924
|
+
});
|
|
8917
8925
|
const computeRowHeightMaps = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
|
|
8918
8926
|
return {
|
|
8919
8927
|
default: 48,
|
|
@@ -11851,9 +11859,6 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
|
|
|
11851
11859
|
setScrollLeft(bodyElem, scrollLeft);
|
|
11852
11860
|
setScrollLeft(headerElem, scrollLeft);
|
|
11853
11861
|
setScrollLeft(footerElem, scrollLeft);
|
|
11854
|
-
setScrollLeft(bodyElem, scrollLeft);
|
|
11855
|
-
setScrollLeft(headerElem, scrollLeft);
|
|
11856
|
-
setScrollLeft(footerElem, scrollLeft);
|
|
11857
11862
|
};
|
|
11858
11863
|
const scrollXEvent = evnt => {
|
|
11859
11864
|
const wrapperEl = evnt.currentTarget;
|
|
@@ -11863,15 +11868,11 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
|
|
|
11863
11868
|
} = wrapperEl;
|
|
11864
11869
|
const isRollX = true;
|
|
11865
11870
|
const isRollY = false;
|
|
11866
|
-
internalData.lastScrollLeft = scrollLeft;
|
|
11867
|
-
reactData.lastScrollTime = Date.now();
|
|
11868
11871
|
handleSyncScrollX(scrollLeft);
|
|
11869
11872
|
$xeTable.triggerScrollXEvent(evnt);
|
|
11870
|
-
$xeTable.handleScrollEvent(evnt, isRollY, isRollX, {
|
|
11873
|
+
$xeTable.handleScrollEvent(evnt, isRollY, isRollX, scrollTop, scrollLeft, {
|
|
11871
11874
|
type: 'table',
|
|
11872
|
-
fixed: ''
|
|
11873
|
-
scrollTop,
|
|
11874
|
-
scrollLeft
|
|
11875
|
+
fixed: ''
|
|
11875
11876
|
});
|
|
11876
11877
|
};
|
|
11877
11878
|
const debounceScrollYCalculate = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().debounce(function () {
|
|
@@ -11899,15 +11900,11 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
|
|
|
11899
11900
|
} = wrapperEl;
|
|
11900
11901
|
const isRollX = false;
|
|
11901
11902
|
const isRollY = true;
|
|
11902
|
-
internalData.lastScrollTop = scrollTop;
|
|
11903
|
-
reactData.lastScrollTime = Date.now();
|
|
11904
11903
|
handleSyncScrollY(scrollTop);
|
|
11905
11904
|
$xeTable.triggerScrollYEvent(evnt);
|
|
11906
|
-
$xeTable.handleScrollEvent(evnt, isRollY, isRollX, {
|
|
11905
|
+
$xeTable.handleScrollEvent(evnt, isRollY, isRollX, scrollTop, scrollLeft, {
|
|
11907
11906
|
type: 'table',
|
|
11908
|
-
fixed: ''
|
|
11909
|
-
scrollTop,
|
|
11910
|
-
scrollLeft
|
|
11907
|
+
fixed: ''
|
|
11911
11908
|
});
|
|
11912
11909
|
};
|
|
11913
11910
|
let keyCtxTimeout;
|
|
@@ -12658,25 +12655,35 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
|
|
|
12658
12655
|
* 设置为固定列
|
|
12659
12656
|
*/
|
|
12660
12657
|
setColumnFixed(fieldOrColumn, fixed) {
|
|
12661
|
-
|
|
12662
|
-
const
|
|
12663
|
-
const isMaxFixedColumn = computeIsMaxFixedColumn.value;
|
|
12658
|
+
let status = false;
|
|
12659
|
+
const cols = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(fieldOrColumn) ? fieldOrColumn : [fieldOrColumn];
|
|
12664
12660
|
const columnOpts = computeColumnOpts.value;
|
|
12665
|
-
|
|
12666
|
-
|
|
12667
|
-
|
|
12668
|
-
|
|
12669
|
-
|
|
12670
|
-
|
|
12671
|
-
|
|
12672
|
-
|
|
12661
|
+
const isMaxFixedColumn = computeIsMaxFixedColumn.value;
|
|
12662
|
+
for (let i = 0; i < cols.length; i++) {
|
|
12663
|
+
const item = cols[i];
|
|
12664
|
+
const column = handleFieldOrColumn($xeTable, item);
|
|
12665
|
+
const targetColumn = getRootColumn($xeTable, column);
|
|
12666
|
+
if (targetColumn && targetColumn.fixed !== fixed) {
|
|
12667
|
+
// 是否超过最大固定列数量
|
|
12668
|
+
if (!targetColumn.fixed && isMaxFixedColumn) {
|
|
12669
|
+
if (core_.VxeUI.modal) {
|
|
12670
|
+
core_.VxeUI.modal.message({
|
|
12671
|
+
status: 'error',
|
|
12672
|
+
content: table_getI18n('vxe.table.maxFixedCol', [columnOpts.maxFixedSize])
|
|
12673
|
+
});
|
|
12674
|
+
}
|
|
12675
|
+
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
12676
|
+
}
|
|
12677
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree([targetColumn], column => {
|
|
12678
|
+
column.fixed = fixed;
|
|
12679
|
+
});
|
|
12680
|
+
tablePrivateMethods.saveCustomStore('update:fixed');
|
|
12681
|
+
if (!status) {
|
|
12682
|
+
status = true;
|
|
12673
12683
|
}
|
|
12674
|
-
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
12675
12684
|
}
|
|
12676
|
-
|
|
12677
|
-
|
|
12678
|
-
});
|
|
12679
|
-
tablePrivateMethods.saveCustomStore('update:fixed');
|
|
12685
|
+
}
|
|
12686
|
+
if (status) {
|
|
12680
12687
|
return tableMethods.refreshColumn();
|
|
12681
12688
|
}
|
|
12682
12689
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
@@ -12685,13 +12692,22 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
|
|
|
12685
12692
|
* 取消指定固定列
|
|
12686
12693
|
*/
|
|
12687
12694
|
clearColumnFixed(fieldOrColumn) {
|
|
12688
|
-
|
|
12689
|
-
const
|
|
12690
|
-
|
|
12691
|
-
|
|
12692
|
-
|
|
12693
|
-
|
|
12694
|
-
|
|
12695
|
+
let status = false;
|
|
12696
|
+
const cols = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(fieldOrColumn) ? fieldOrColumn : [fieldOrColumn];
|
|
12697
|
+
cols.forEach(item => {
|
|
12698
|
+
const column = handleFieldOrColumn($xeTable, item);
|
|
12699
|
+
const targetColumn = getRootColumn($xeTable, column);
|
|
12700
|
+
if (targetColumn && targetColumn.fixed) {
|
|
12701
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree([targetColumn], column => {
|
|
12702
|
+
column.fixed = null;
|
|
12703
|
+
});
|
|
12704
|
+
tablePrivateMethods.saveCustomStore('update:fixed');
|
|
12705
|
+
if (!status) {
|
|
12706
|
+
status = true;
|
|
12707
|
+
}
|
|
12708
|
+
}
|
|
12709
|
+
});
|
|
12710
|
+
if (status) {
|
|
12695
12711
|
return tableMethods.refreshColumn();
|
|
12696
12712
|
}
|
|
12697
12713
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
@@ -12700,9 +12716,18 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
|
|
|
12700
12716
|
* 隐藏指定列
|
|
12701
12717
|
*/
|
|
12702
12718
|
hideColumn(fieldOrColumn) {
|
|
12703
|
-
|
|
12704
|
-
|
|
12705
|
-
|
|
12719
|
+
let status = false;
|
|
12720
|
+
const cols = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(fieldOrColumn) ? fieldOrColumn : [fieldOrColumn];
|
|
12721
|
+
cols.forEach(item => {
|
|
12722
|
+
const column = handleFieldOrColumn($xeTable, item);
|
|
12723
|
+
if (column && column.visible) {
|
|
12724
|
+
column.visible = false;
|
|
12725
|
+
if (!status) {
|
|
12726
|
+
status = true;
|
|
12727
|
+
}
|
|
12728
|
+
}
|
|
12729
|
+
});
|
|
12730
|
+
if (status) {
|
|
12706
12731
|
return tablePrivateMethods.handleCustom();
|
|
12707
12732
|
}
|
|
12708
12733
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
@@ -12711,25 +12736,43 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
|
|
|
12711
12736
|
* 显示指定列
|
|
12712
12737
|
*/
|
|
12713
12738
|
showColumn(fieldOrColumn) {
|
|
12714
|
-
|
|
12715
|
-
|
|
12716
|
-
|
|
12739
|
+
let status = false;
|
|
12740
|
+
const cols = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(fieldOrColumn) ? fieldOrColumn : [fieldOrColumn];
|
|
12741
|
+
cols.forEach(item => {
|
|
12742
|
+
const column = handleFieldOrColumn($xeTable, item);
|
|
12743
|
+
if (column && !column.visible) {
|
|
12744
|
+
column.visible = true;
|
|
12745
|
+
if (!status) {
|
|
12746
|
+
status = true;
|
|
12747
|
+
}
|
|
12748
|
+
}
|
|
12749
|
+
});
|
|
12750
|
+
if (status) {
|
|
12717
12751
|
return tablePrivateMethods.handleCustom();
|
|
12718
12752
|
}
|
|
12719
12753
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
12720
12754
|
},
|
|
12721
12755
|
setColumnWidth(fieldOrColumn, width) {
|
|
12722
|
-
|
|
12723
|
-
|
|
12724
|
-
|
|
12725
|
-
|
|
12726
|
-
if (
|
|
12727
|
-
const
|
|
12728
|
-
|
|
12729
|
-
|
|
12730
|
-
|
|
12756
|
+
let status = false;
|
|
12757
|
+
const cols = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(fieldOrColumn) ? fieldOrColumn : [fieldOrColumn];
|
|
12758
|
+
cols.forEach(item => {
|
|
12759
|
+
const column = handleFieldOrColumn($xeTable, item);
|
|
12760
|
+
if (column) {
|
|
12761
|
+
const colWidth = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toInteger(width);
|
|
12762
|
+
let rdWidth = colWidth;
|
|
12763
|
+
if (isScale(width)) {
|
|
12764
|
+
const tableBody = refTableBody.value;
|
|
12765
|
+
const bodyElem = tableBody ? tableBody.$el : null;
|
|
12766
|
+
const bodyWidth = bodyElem ? bodyElem.clientWidth - 1 : 0;
|
|
12767
|
+
rdWidth = Math.floor(colWidth * bodyWidth);
|
|
12768
|
+
}
|
|
12769
|
+
column.resizeWidth = rdWidth;
|
|
12770
|
+
if (!status) {
|
|
12771
|
+
status = true;
|
|
12772
|
+
}
|
|
12731
12773
|
}
|
|
12732
|
-
|
|
12774
|
+
});
|
|
12775
|
+
if (status) {
|
|
12733
12776
|
return tableMethods.refreshColumn();
|
|
12734
12777
|
}
|
|
12735
12778
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
@@ -13857,16 +13900,34 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
|
|
|
13857
13900
|
*/
|
|
13858
13901
|
scrollTo(scrollLeft, scrollTop) {
|
|
13859
13902
|
const tableBody = refTableBody.value;
|
|
13903
|
+
const tableHeader = refTableHeader.value;
|
|
13860
13904
|
const tableFooter = refTableFooter.value;
|
|
13905
|
+
const leftBody = refTableLeftBody.value;
|
|
13861
13906
|
const rightBody = refTableRightBody.value;
|
|
13862
13907
|
const tableBodyElem = tableBody ? tableBody.$el : null;
|
|
13908
|
+
const leftBodyElem = leftBody ? leftBody.$el : null;
|
|
13863
13909
|
const rightBodyElem = rightBody ? rightBody.$el : null;
|
|
13910
|
+
const tableHeaderElem = tableHeader ? tableHeader.$el : null;
|
|
13864
13911
|
const tableFooterElem = tableFooter ? tableFooter.$el : null;
|
|
13865
13912
|
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(scrollLeft)) {
|
|
13866
|
-
|
|
13913
|
+
const xHandleEl = refScrollXHandleElem.value;
|
|
13914
|
+
if (xHandleEl) {
|
|
13915
|
+
setScrollLeft(xHandleEl, scrollLeft);
|
|
13916
|
+
} else {
|
|
13917
|
+
setScrollLeft(tableBodyElem, scrollLeft);
|
|
13918
|
+
setScrollLeft(tableHeaderElem, scrollLeft);
|
|
13919
|
+
setScrollLeft(tableFooterElem, scrollLeft);
|
|
13920
|
+
}
|
|
13867
13921
|
}
|
|
13868
13922
|
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(scrollTop)) {
|
|
13869
|
-
|
|
13923
|
+
const yHandleEl = refScrollYHandleElem.value;
|
|
13924
|
+
if (yHandleEl) {
|
|
13925
|
+
setScrollTop(yHandleEl, scrollTop);
|
|
13926
|
+
} else {
|
|
13927
|
+
setScrollTop(tableBodyElem, scrollTop);
|
|
13928
|
+
setScrollTop(leftBodyElem, scrollTop);
|
|
13929
|
+
setScrollTop(rightBodyElem, scrollTop);
|
|
13930
|
+
}
|
|
13870
13931
|
}
|
|
13871
13932
|
if (reactData.scrollXLoad || reactData.scrollYLoad) {
|
|
13872
13933
|
return new Promise(resolve => {
|
|
@@ -16379,40 +16440,100 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
|
|
|
16379
16440
|
triggerScrollXEvent() {
|
|
16380
16441
|
loadScrollXData();
|
|
16381
16442
|
},
|
|
16382
|
-
handleScrollEvent(evnt, isRollY, isRollX, params) {
|
|
16443
|
+
handleScrollEvent(evnt, isRollY, isRollX, scrollTop, scrollLeft, params) {
|
|
16383
16444
|
const {
|
|
16384
16445
|
highlightHoverRow
|
|
16385
16446
|
} = props;
|
|
16447
|
+
const {
|
|
16448
|
+
lastScrollLeft,
|
|
16449
|
+
lastScrollTop
|
|
16450
|
+
} = internalData;
|
|
16386
16451
|
const tableBody = refTableBody.value;
|
|
16387
16452
|
const bodyElem = tableBody ? tableBody.$el : null;
|
|
16388
16453
|
const rowOpts = computeRowOpts.value;
|
|
16389
16454
|
const validTip = refValidTooltip.value;
|
|
16390
16455
|
const tooltip = refTooltip.value;
|
|
16391
|
-
if (rowOpts.isHover || highlightHoverRow) {
|
|
16392
|
-
$xeTable.clearHoverRow();
|
|
16393
|
-
}
|
|
16394
|
-
if (validTip && validTip.reactData.visible) {
|
|
16395
|
-
validTip.close();
|
|
16396
|
-
}
|
|
16397
|
-
if (tooltip && tooltip.reactData.visible) {
|
|
16398
|
-
tooltip.close();
|
|
16399
|
-
}
|
|
16400
|
-
if (isRollX) {
|
|
16401
|
-
tablePrivateMethods.checkScrolling();
|
|
16402
|
-
}
|
|
16403
16456
|
const bodyHeight = bodyElem ? bodyElem.clientHeight : 0;
|
|
16404
16457
|
const bodyWidth = bodyElem ? bodyElem.clientWidth : 0;
|
|
16405
16458
|
const scrollHeight = bodyElem ? bodyElem.scrollHeight : 0;
|
|
16406
16459
|
const scrollWidth = bodyElem ? bodyElem.scrollWidth : 0;
|
|
16460
|
+
let isTop = false;
|
|
16461
|
+
let isBottom = false;
|
|
16462
|
+
let isLeft = false;
|
|
16463
|
+
let isRight = false;
|
|
16464
|
+
let direction = '';
|
|
16465
|
+
let isTopBoundary = false;
|
|
16466
|
+
let isBottomBoundary = false;
|
|
16467
|
+
let isLeftBoundary = false;
|
|
16468
|
+
let isRightBoundary = false;
|
|
16469
|
+
if (isRollX) {
|
|
16470
|
+
const xThreshold = computeScrollXThreshold.value;
|
|
16471
|
+
isLeft = scrollLeft <= 0;
|
|
16472
|
+
if (!isLeft) {
|
|
16473
|
+
isRight = scrollLeft + bodyWidth >= scrollWidth;
|
|
16474
|
+
}
|
|
16475
|
+
if (scrollLeft > lastScrollLeft) {
|
|
16476
|
+
direction = 'right';
|
|
16477
|
+
if (scrollLeft + bodyWidth >= scrollWidth - xThreshold) {
|
|
16478
|
+
isRightBoundary = true;
|
|
16479
|
+
}
|
|
16480
|
+
} else {
|
|
16481
|
+
direction = 'left';
|
|
16482
|
+
if (scrollLeft <= xThreshold) {
|
|
16483
|
+
isLeftBoundary = true;
|
|
16484
|
+
}
|
|
16485
|
+
}
|
|
16486
|
+
tablePrivateMethods.checkScrolling();
|
|
16487
|
+
internalData.lastScrollLeft = scrollLeft;
|
|
16488
|
+
reactData.lastScrollTime = Date.now();
|
|
16489
|
+
} else {
|
|
16490
|
+
const yThreshold = computeScrollYThreshold.value;
|
|
16491
|
+
isTop = scrollTop <= 0;
|
|
16492
|
+
if (!isTop) {
|
|
16493
|
+
isBottom = scrollTop + bodyHeight >= scrollHeight;
|
|
16494
|
+
}
|
|
16495
|
+
if (scrollTop > lastScrollTop) {
|
|
16496
|
+
direction = 'bottom';
|
|
16497
|
+
if (scrollTop + bodyHeight >= scrollHeight - yThreshold) {
|
|
16498
|
+
isBottomBoundary = true;
|
|
16499
|
+
}
|
|
16500
|
+
} else {
|
|
16501
|
+
direction = 'top';
|
|
16502
|
+
if (scrollTop <= yThreshold) {
|
|
16503
|
+
isTopBoundary = true;
|
|
16504
|
+
}
|
|
16505
|
+
}
|
|
16506
|
+
internalData.lastScrollTop = scrollTop;
|
|
16507
|
+
reactData.lastScrollTime = Date.now();
|
|
16508
|
+
}
|
|
16407
16509
|
const evntParams = {
|
|
16510
|
+
scrollTop,
|
|
16511
|
+
scrollLeft,
|
|
16408
16512
|
bodyHeight,
|
|
16409
16513
|
bodyWidth,
|
|
16410
16514
|
scrollHeight,
|
|
16411
16515
|
scrollWidth,
|
|
16412
16516
|
isX: isRollX,
|
|
16413
16517
|
isY: isRollY,
|
|
16518
|
+
isTop,
|
|
16519
|
+
isBottom,
|
|
16520
|
+
isLeft,
|
|
16521
|
+
isRight,
|
|
16522
|
+
direction,
|
|
16414
16523
|
...params
|
|
16415
16524
|
};
|
|
16525
|
+
if (rowOpts.isHover || highlightHoverRow) {
|
|
16526
|
+
$xeTable.clearHoverRow();
|
|
16527
|
+
}
|
|
16528
|
+
if (validTip && validTip.reactData.visible) {
|
|
16529
|
+
validTip.close();
|
|
16530
|
+
}
|
|
16531
|
+
if (tooltip && tooltip.reactData.visible) {
|
|
16532
|
+
tooltip.close();
|
|
16533
|
+
}
|
|
16534
|
+
if (isBottomBoundary || isTopBoundary || isRightBoundary || isLeftBoundary) {
|
|
16535
|
+
dispatchEvent('scroll-boundary', evntParams, evnt);
|
|
16536
|
+
}
|
|
16416
16537
|
dispatchEvent('scroll', evntParams, evnt);
|
|
16417
16538
|
},
|
|
16418
16539
|
/**
|