vxe-table 4.18.7 → 4.18.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.
- package/LICENSE +20 -20
- package/README.en.md +118 -118
- package/README.ja-JP.md +117 -117
- package/README.md +268 -268
- package/README.zh-TW.md +117 -117
- package/es/style.css +1 -1
- package/es/table/src/table.js +101 -84
- package/es/table/src/util.js +6 -0
- package/es/table/style.css +18 -48
- package/es/ui/index.js +1 -1
- package/es/ui/src/dom.js +21 -0
- package/es/ui/src/log.js +1 -1
- package/es/vxe-table/style.css +18 -48
- package/lib/index.common.js +2 -1
- package/lib/index.umd.js +2769 -2840
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/src/table.js +21 -18
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/src/util.js +6 -0
- package/lib/table/src/util.min.js +1 -1
- package/lib/table/style/style.css +18 -48
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/dom.js +23 -0
- package/lib/ui/src/dom.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/v-x-e-table/index.js +2 -1
- package/lib/v-x-e-table/index.min.js +1 -1
- package/lib/vxe-colgroup/index.js +2 -1
- package/lib/vxe-colgroup/index.min.js +1 -1
- package/lib/vxe-column/index.js +2 -1
- package/lib/vxe-column/index.min.js +1 -1
- package/lib/vxe-grid/index.js +2 -1
- package/lib/vxe-grid/index.min.js +1 -1
- package/lib/vxe-table/index.js +2 -1
- package/lib/vxe-table/index.min.js +1 -1
- package/lib/vxe-table/style/style.css +18 -48
- package/lib/vxe-toolbar/index.js +2 -1
- package/lib/vxe-toolbar/index.min.js +1 -1
- package/lib/vxe-ui/index.js +2 -1
- package/lib/vxe-ui/index.min.js +1 -1
- package/lib/vxe-v-x-e-table/index.js +2 -1
- package/lib/vxe-v-x-e-table/index.min.js +1 -1
- package/package.json +91 -91
- package/packages/colgroup/index.ts +22 -22
- package/packages/column/index.ts +22 -22
- package/packages/components.ts +43 -43
- package/packages/grid/index.ts +18 -18
- package/packages/grid/src/emits.ts +19 -19
- package/packages/grid/src/grid.ts +1768 -1768
- package/packages/grid/src/props.ts +23 -23
- package/packages/index.ts +4 -4
- package/packages/locale/lang/ar-EG.ts +832 -832
- package/packages/locale/lang/de-DE.ts +832 -832
- package/packages/locale/lang/en-US.ts +832 -832
- package/packages/locale/lang/es-ES.ts +832 -832
- package/packages/locale/lang/fr-FR.ts +832 -832
- package/packages/locale/lang/hu-HU.ts +832 -832
- package/packages/locale/lang/hy-AM.ts +832 -832
- package/packages/locale/lang/id-ID.ts +832 -832
- package/packages/locale/lang/it-IT.ts +832 -832
- package/packages/locale/lang/ja-JP.ts +832 -832
- package/packages/locale/lang/ko-KR.ts +832 -832
- package/packages/locale/lang/ms-MY.ts +832 -832
- package/packages/locale/lang/nb-NO.ts +832 -832
- package/packages/locale/lang/pt-BR.ts +832 -832
- package/packages/locale/lang/ru-RU.ts +832 -832
- package/packages/locale/lang/th-TH.ts +832 -832
- package/packages/locale/lang/ug-CN.ts +832 -832
- package/packages/locale/lang/uk-UA.ts +832 -832
- package/packages/locale/lang/uz-UZ.ts +832 -832
- package/packages/locale/lang/vi-VN.ts +832 -832
- package/packages/locale/lang/zh-CHT.ts +832 -832
- package/packages/locale/lang/zh-CN.ts +832 -832
- package/packages/locale/lang/zh-HK.ts +3 -3
- package/packages/locale/lang/zh-MO.ts +3 -3
- package/packages/locale/lang/zh-TC.ts +3 -3
- package/packages/locale/lang/zh-TW.ts +3 -3
- package/packages/table/index.ts +26 -26
- package/packages/table/module/custom/hook.ts +359 -359
- package/packages/table/module/custom/panel.ts +1331 -1331
- package/packages/table/module/edit/hook.ts +1032 -1032
- package/packages/table/module/export/export-panel.ts +567 -567
- package/packages/table/module/export/hook.ts +1654 -1654
- package/packages/table/module/export/import-panel.ts +266 -266
- package/packages/table/module/export/util.ts +24 -24
- package/packages/table/module/filter/hook.ts +468 -468
- package/packages/table/module/filter/panel.ts +301 -301
- package/packages/table/module/keyboard/hook.ts +495 -495
- package/packages/table/module/menu/hook.ts +325 -325
- package/packages/table/module/menu/panel.ts +201 -201
- package/packages/table/module/validator/hook.ts +631 -631
- package/packages/table/render/index.ts +1440 -1440
- package/packages/table/src/body.ts +932 -932
- package/packages/table/src/cell.ts +1290 -1290
- package/packages/table/src/column.ts +190 -190
- package/packages/table/src/columnInfo.ts +225 -225
- package/packages/table/src/emits.ts +123 -123
- package/packages/table/src/footer.ts +368 -368
- package/packages/table/src/group.ts +59 -59
- package/packages/table/src/header.ts +559 -559
- package/packages/table/src/props.ts +324 -324
- package/packages/table/src/store.ts +14 -14
- package/packages/table/src/table.ts +14020 -14004
- package/packages/table/src/use/cell-view.ts +44 -44
- package/packages/table/src/use/index.ts +1 -1
- package/packages/table/src/util.ts +1070 -1064
- package/packages/toolbar/index.ts +18 -18
- package/packages/toolbar/src/toolbar.ts +701 -701
- package/packages/ui/index.ts +530 -530
- package/packages/ui/src/anime.ts +52 -52
- package/packages/ui/src/comp.ts +3 -3
- package/packages/ui/src/dom.ts +259 -236
- package/packages/ui/src/log.ts +8 -8
- package/packages/ui/src/utils.ts +56 -56
- package/packages/ui/src/vn.ts +55 -55
- package/packages/v-x-e-table/index.d.ts +4 -4
- package/packages/v-x-e-table/index.ts +4 -4
- package/styles/all.scss +7 -7
- package/styles/base.scss +16 -16
- package/styles/components/grid.scss +89 -89
- package/styles/components/icon.scss +225 -225
- package/styles/components/old-icon.scss +715 -715
- package/styles/components/table-module/all.scss +6 -6
- package/styles/components/table-module/custom.scss +527 -527
- package/styles/components/table-module/export.scss +130 -130
- package/styles/components/table-module/filter.scss +130 -130
- package/styles/components/table-module/menu.scss +81 -81
- package/styles/components/table.scss +2679 -2679
- package/styles/components/toolbar.scss +119 -119
- package/styles/default.scss +2 -2
- package/styles/helpers/baseMixin.scss +95 -95
- package/styles/index.scss +4 -4
- package/styles/modules.scss +5 -5
- package/styles/theme/base.scss +93 -93
- package/styles/theme/dark.scss +49 -49
- package/styles/theme/light.scss +44 -44
- package/styles/variable.scss +43 -43
- package/types/all.d.ts +37 -37
- package/types/index.d.ts +4 -4
- /package/es/{iconfont.1773991907408.ttf → iconfont.1774420952727.ttf} +0 -0
- /package/es/{iconfont.1773991907408.woff → iconfont.1774420952727.woff} +0 -0
- /package/es/{iconfont.1773991907408.woff2 → iconfont.1774420952727.woff2} +0 -0
- /package/lib/{iconfont.1773991907408.ttf → iconfont.1774420952727.ttf} +0 -0
- /package/lib/{iconfont.1773991907408.woff → iconfont.1774420952727.woff} +0 -0
- /package/lib/{iconfont.1773991907408.woff2 → iconfont.1774420952727.woff2} +0 -0
package/es/table/src/table.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { h, reactive, ref, provide, inject, nextTick, Teleport, onActivated, onDeactivated, onBeforeUnmount, onUnmounted, watch, computed, onMounted } from 'vue';
|
|
2
2
|
import { defineVxeComponent } from '../../ui/src/comp';
|
|
3
3
|
import XEUtils from 'xe-utils';
|
|
4
|
-
import { initTpImg, getTpImg, isPx, isScale, hasClass, addClass, removeClass,
|
|
4
|
+
import { initTpImg, getTpImg, isPx, isScale, hasClass, addClass, removeClass, wheelScrollTopTo, wheelScrollLeftTo, getEventTargetNode, getPaddingTopBottomSize, setScrollTop, setScrollLeft, toCssUnit, hasControlKey, checkTargetElement } from '../../ui/src/dom';
|
|
5
5
|
import { getLastZIndex, nextZIndex, hasChildrenList, getFuncText, isEnableConf, formatText, eqEmptyValue } from '../../ui/src/utils';
|
|
6
6
|
import { VxeUI } from '../../ui';
|
|
7
7
|
import { createReactData, createInternalData, getRowUniqueId, createRowId, clearTableAllStatus, getColumnList, toFilters, hasDeepKey, getRowkey, getRowid, rowToVisible, colToVisible, getCellValue, setCellValue, handleRowidOrRow, handleFieldOrColumn, toTreePathSeq, restoreScrollLocation, getRootColumn, getRefElem, getColReMinWidth, createHandleUpdateRowId, createHandleGetRowId, getCalcHeight, getCellRestHeight, getLastChildColumn } from './util';
|
|
@@ -364,6 +364,7 @@ export default defineVxeComponent({
|
|
|
364
364
|
}
|
|
365
365
|
return leftWidth;
|
|
366
366
|
});
|
|
367
|
+
// 合并列是否超越冻结列
|
|
367
368
|
const computeBodyMergeCoverFixed = computed(() => {
|
|
368
369
|
const { columnStore, mergeBodyFlag } = reactData;
|
|
369
370
|
const { mergeBodyList, visibleColumn } = internalData;
|
|
@@ -373,7 +374,10 @@ export default defineVxeComponent({
|
|
|
373
374
|
const lecIndex = leftList.length;
|
|
374
375
|
for (let i = 0; i < mergeBodyList.length; i++) {
|
|
375
376
|
const { col, colspan } = mergeBodyList[i];
|
|
376
|
-
if (col < lecIndex
|
|
377
|
+
if (col < lecIndex && col + colspan > lecIndex) {
|
|
378
|
+
return true;
|
|
379
|
+
}
|
|
380
|
+
else if (col < rscIndex && col + colspan > rscIndex) {
|
|
377
381
|
return true;
|
|
378
382
|
}
|
|
379
383
|
}
|
|
@@ -970,32 +974,46 @@ export default defineVxeComponent({
|
|
|
970
974
|
}
|
|
971
975
|
return { toVisibleIndex: 0, visibleSize: 6 };
|
|
972
976
|
};
|
|
973
|
-
const calculateMergerOffsetIndex = (list, offsetItem, type) => {
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
977
|
+
const calculateMergerOffsetIndex = (list, mergeMaps, offsetItem, type) => {
|
|
978
|
+
const mKey = `${offsetItem.startIndex}:${offsetItem.endIndex}`;
|
|
979
|
+
const mObj = mergeMaps[mKey];
|
|
980
|
+
// 缓存
|
|
981
|
+
if (mObj) {
|
|
982
|
+
offsetItem.startIndex = mObj.startIndex;
|
|
983
|
+
offsetItem.endIndex = mObj.endIndex;
|
|
984
|
+
}
|
|
985
|
+
else {
|
|
986
|
+
for (let mcIndex = 0, len = list.length; mcIndex < len; mcIndex++) {
|
|
987
|
+
const mergeItem = list[mcIndex];
|
|
988
|
+
const { startIndex, endIndex } = offsetItem;
|
|
989
|
+
const mergeStartIndex = mergeItem[type];
|
|
990
|
+
const mergeSpanNumber = mergeItem[type + 'span'];
|
|
991
|
+
const mergeEndIndex = mergeStartIndex + mergeSpanNumber;
|
|
992
|
+
if (mergeStartIndex < startIndex && startIndex < mergeEndIndex) {
|
|
993
|
+
offsetItem.startIndex = mergeStartIndex;
|
|
994
|
+
}
|
|
995
|
+
if (mergeStartIndex < endIndex && endIndex < mergeEndIndex) {
|
|
996
|
+
offsetItem.endIndex = mergeEndIndex;
|
|
997
|
+
}
|
|
998
|
+
if (offsetItem.startIndex !== startIndex || offsetItem.endIndex !== endIndex) {
|
|
999
|
+
mcIndex = -1;
|
|
1000
|
+
}
|
|
988
1001
|
}
|
|
1002
|
+
mergeMaps[mKey] = offsetItem;
|
|
989
1003
|
}
|
|
990
1004
|
};
|
|
991
1005
|
function buildMergeData(mergeConfigs) {
|
|
992
1006
|
const mergeMaps = {};
|
|
1007
|
+
const mergeRowMaps = {};
|
|
1008
|
+
const mergeColMaps = {};
|
|
993
1009
|
if (mergeConfigs && mergeConfigs.length) {
|
|
994
1010
|
for (let mIndex = 0; mIndex < mergeConfigs.length; mIndex++) {
|
|
995
1011
|
const { row: _rowIndex, col: _columnIndex, rowspan: mergeRowspan, colspan: mergeColspan } = mergeConfigs[mIndex];
|
|
996
1012
|
for (let i = 0; i < mergeRowspan; i++) {
|
|
1013
|
+
const currRIndex = _rowIndex + i;
|
|
997
1014
|
for (let j = 0; j < mergeColspan; j++) {
|
|
998
|
-
|
|
1015
|
+
const currCIndex = _columnIndex + j;
|
|
1016
|
+
mergeMaps[`${currRIndex}:${currCIndex}`] = !i && !j
|
|
999
1017
|
? {
|
|
1000
1018
|
rowspan: mergeRowspan,
|
|
1001
1019
|
colspan: mergeColspan
|
|
@@ -1008,12 +1026,14 @@ export default defineVxeComponent({
|
|
|
1008
1026
|
}
|
|
1009
1027
|
}
|
|
1010
1028
|
}
|
|
1011
|
-
return mergeMaps;
|
|
1029
|
+
return { mergeMaps, mergeRowMaps, mergeColMaps };
|
|
1012
1030
|
}
|
|
1013
1031
|
const handleUpdateMergeBodyCells = (merges) => {
|
|
1014
1032
|
internalData.mergeBodyList = [];
|
|
1015
1033
|
internalData.mergeBodyMaps = {};
|
|
1016
1034
|
internalData.mergeBodyCellMaps = {};
|
|
1035
|
+
internalData.mergeBodyRowMaps = {};
|
|
1036
|
+
internalData.mergeBodyColMaps = {};
|
|
1017
1037
|
$xeTable.setMergeCells(merges);
|
|
1018
1038
|
};
|
|
1019
1039
|
const handleBodyMerge = (merges) => {
|
|
@@ -1130,6 +1150,8 @@ export default defineVxeComponent({
|
|
|
1130
1150
|
internalData.mergeHeaderList = [];
|
|
1131
1151
|
internalData.mergeHeaderMaps = {};
|
|
1132
1152
|
internalData.mergeHeaderCellMaps = {};
|
|
1153
|
+
internalData.mergeHeaderRowMaps = {};
|
|
1154
|
+
internalData.mergeBodyColMaps = {};
|
|
1133
1155
|
$xeTable.setMergeHeaderCells(merges);
|
|
1134
1156
|
};
|
|
1135
1157
|
const handleHeaderMerge = (merges) => {
|
|
@@ -1231,6 +1253,8 @@ export default defineVxeComponent({
|
|
|
1231
1253
|
internalData.mergeFooterList = [];
|
|
1232
1254
|
internalData.mergeFooterMaps = {};
|
|
1233
1255
|
internalData.mergeFooterCellMaps = {};
|
|
1256
|
+
internalData.mergeFooterRowMaps = {};
|
|
1257
|
+
internalData.mergeFooterColMaps = {};
|
|
1234
1258
|
$xeTable.setMergeFooterCells(merges);
|
|
1235
1259
|
};
|
|
1236
1260
|
const handleFooterMerge = (merges) => {
|
|
@@ -2135,8 +2159,8 @@ export default defineVxeComponent({
|
|
|
2135
2159
|
const treeOpts = computeTreeOpts.value;
|
|
2136
2160
|
const childrenField = treeOpts.children || treeOpts.childrenField;
|
|
2137
2161
|
const { transform, rowField, parentField, mapChildrenField } = treeOpts;
|
|
2138
|
-
const { isEvery, remote: allRemoteFilter, filterMethod: allFilterMethod } = filterOpts;
|
|
2139
|
-
const { remote: allRemoteSort, sortMethod: allSortMethod, multiple: sortMultiple, chronological } = sortOpts;
|
|
2162
|
+
const { isEvery, remote: allRemoteFilter, filterMethod: allFilterMethod, isDeep: isFilterDeep } = filterOpts;
|
|
2163
|
+
const { remote: allRemoteSort, sortMethod: allSortMethod, multiple: sortMultiple, chronological, isDeep: isSortDeep } = sortOpts;
|
|
2140
2164
|
let tableData = [];
|
|
2141
2165
|
let tableTree = [];
|
|
2142
2166
|
// 处理数据
|
|
@@ -2200,7 +2224,7 @@ export default defineVxeComponent({
|
|
|
2200
2224
|
});
|
|
2201
2225
|
tableData = tableTree;
|
|
2202
2226
|
}
|
|
2203
|
-
else if (treeConfig && transform) {
|
|
2227
|
+
else if (treeConfig && transform && isFilterDeep !== false) {
|
|
2204
2228
|
// 筛选虚拟树
|
|
2205
2229
|
tableTree = XEUtils.searchTree(tableFullTreeData, handleFilter, {
|
|
2206
2230
|
original: true,
|
|
@@ -2226,7 +2250,7 @@ export default defineVxeComponent({
|
|
|
2226
2250
|
});
|
|
2227
2251
|
tableData = tableTree;
|
|
2228
2252
|
}
|
|
2229
|
-
else if (treeConfig && transform) {
|
|
2253
|
+
else if (treeConfig && transform && isFilterDeep !== false) {
|
|
2230
2254
|
// 还原虚拟树
|
|
2231
2255
|
tableTree = XEUtils.searchTree(tableFullTreeData, () => true, {
|
|
2232
2256
|
original: true,
|
|
@@ -2265,7 +2289,7 @@ export default defineVxeComponent({
|
|
|
2265
2289
|
}
|
|
2266
2290
|
tableData = tableTree;
|
|
2267
2291
|
}
|
|
2268
|
-
else if (treeConfig && transform) {
|
|
2292
|
+
else if (treeConfig && transform && isSortDeep !== false) {
|
|
2269
2293
|
// 虚拟树的排序
|
|
2270
2294
|
if (allSortMethod) {
|
|
2271
2295
|
const sortRests = allSortMethod({ data: tableTree, sortList: orderColumns, $table: $xeTable });
|
|
@@ -2308,7 +2332,7 @@ export default defineVxeComponent({
|
|
|
2308
2332
|
});
|
|
2309
2333
|
tableData = tableTree;
|
|
2310
2334
|
}
|
|
2311
|
-
else if (treeConfig && transform) {
|
|
2335
|
+
else if (treeConfig && transform && isSortDeep !== false) {
|
|
2312
2336
|
// 还原虚拟树
|
|
2313
2337
|
tableTree = XEUtils.searchTree(tableFullTreeData, () => true, {
|
|
2314
2338
|
original: true,
|
|
@@ -3765,7 +3789,7 @@ export default defineVxeComponent({
|
|
|
3765
3789
|
};
|
|
3766
3790
|
const loadScrollXData = () => {
|
|
3767
3791
|
const { isScrollXBig } = reactData;
|
|
3768
|
-
const { mergeBodyList, mergeFooterList, scrollXStore } = internalData;
|
|
3792
|
+
const { mergeBodyList, mergeFooterList, mergeBodyRowMaps, scrollXStore } = internalData;
|
|
3769
3793
|
const { preloadSize, startIndex, endIndex, offsetSize } = scrollXStore;
|
|
3770
3794
|
const { toVisibleIndex, visibleSize } = handleVirtualXVisible();
|
|
3771
3795
|
const offsetItem = {
|
|
@@ -3774,7 +3798,7 @@ export default defineVxeComponent({
|
|
|
3774
3798
|
};
|
|
3775
3799
|
scrollXStore.visibleStartIndex = toVisibleIndex - 1;
|
|
3776
3800
|
scrollXStore.visibleEndIndex = toVisibleIndex + visibleSize + 1;
|
|
3777
|
-
calculateMergerOffsetIndex(mergeBodyList.concat(mergeFooterList), offsetItem, 'col');
|
|
3801
|
+
calculateMergerOffsetIndex(mergeBodyList.concat(mergeFooterList), mergeBodyRowMaps, offsetItem, 'col');
|
|
3778
3802
|
const { startIndex: offsetStartIndex, endIndex: offsetEndIndex } = offsetItem;
|
|
3779
3803
|
if (toVisibleIndex <= startIndex || toVisibleIndex >= endIndex - visibleSize - 1) {
|
|
3780
3804
|
if (startIndex !== offsetStartIndex || endIndex !== offsetEndIndex) {
|
|
@@ -4201,7 +4225,7 @@ export default defineVxeComponent({
|
|
|
4201
4225
|
*/
|
|
4202
4226
|
const loadScrollYData = () => {
|
|
4203
4227
|
const { isAllOverflow, isScrollYBig } = reactData;
|
|
4204
|
-
const { mergeBodyList, scrollYStore } = internalData;
|
|
4228
|
+
const { mergeBodyList, mergeBodyColMaps, scrollYStore } = internalData;
|
|
4205
4229
|
const { preloadSize, startIndex, endIndex, offsetSize } = scrollYStore;
|
|
4206
4230
|
const autoOffsetYSize = isAllOverflow ? offsetSize : offsetSize + 1;
|
|
4207
4231
|
const { toVisibleIndex, visibleSize } = handleVirtualYVisible();
|
|
@@ -4211,7 +4235,7 @@ export default defineVxeComponent({
|
|
|
4211
4235
|
};
|
|
4212
4236
|
scrollYStore.visibleStartIndex = toVisibleIndex - 1;
|
|
4213
4237
|
scrollYStore.visibleEndIndex = toVisibleIndex + visibleSize + 1;
|
|
4214
|
-
calculateMergerOffsetIndex(mergeBodyList, offsetItem, 'row');
|
|
4238
|
+
calculateMergerOffsetIndex(mergeBodyList, mergeBodyColMaps, offsetItem, 'row');
|
|
4215
4239
|
const { startIndex: offsetStartIndex, endIndex: offsetEndIndex } = offsetItem;
|
|
4216
4240
|
if (toVisibleIndex <= startIndex || toVisibleIndex >= endIndex - visibleSize - 1) {
|
|
4217
4241
|
if (startIndex !== offsetStartIndex || endIndex !== offsetEndIndex) {
|
|
@@ -4359,11 +4383,6 @@ export default defineVxeComponent({
|
|
|
4359
4383
|
}
|
|
4360
4384
|
return multiple;
|
|
4361
4385
|
};
|
|
4362
|
-
const wheelScrollLeftTo = (scrollLeft, cb) => {
|
|
4363
|
-
requestAnimationFrame(() => {
|
|
4364
|
-
cb(scrollLeft);
|
|
4365
|
-
});
|
|
4366
|
-
};
|
|
4367
4386
|
const syncGanttScrollTop = (scrollTop) => {
|
|
4368
4387
|
const $xeGanttView = internalData.xeGanttView;
|
|
4369
4388
|
if ($xeGanttView) {
|
|
@@ -7455,6 +7474,8 @@ export default defineVxeComponent({
|
|
|
7455
7474
|
internalData.mergeBodyList = [];
|
|
7456
7475
|
internalData.mergeBodyMaps = {};
|
|
7457
7476
|
internalData.mergeBodyCellMaps = {};
|
|
7477
|
+
internalData.mergeBodyRowMaps = {};
|
|
7478
|
+
internalData.mergeBodyColMaps = {};
|
|
7458
7479
|
reactData.mergeBodyFlag++;
|
|
7459
7480
|
return nextTick().then(() => {
|
|
7460
7481
|
return updateStyle();
|
|
@@ -7491,6 +7512,8 @@ export default defineVxeComponent({
|
|
|
7491
7512
|
internalData.mergeHeaderList = [];
|
|
7492
7513
|
internalData.mergeHeaderMaps = {};
|
|
7493
7514
|
internalData.mergeHeaderCellMaps = {};
|
|
7515
|
+
internalData.mergeHeaderRowMaps = {};
|
|
7516
|
+
internalData.mergeBodyColMaps = {};
|
|
7494
7517
|
reactData.mergeHeadFlag++;
|
|
7495
7518
|
return nextTick().then(() => {
|
|
7496
7519
|
return updateStyle();
|
|
@@ -7542,6 +7565,8 @@ export default defineVxeComponent({
|
|
|
7542
7565
|
internalData.mergeFooterList = [];
|
|
7543
7566
|
internalData.mergeFooterMaps = {};
|
|
7544
7567
|
internalData.mergeFooterCellMaps = {};
|
|
7568
|
+
internalData.mergeFooterRowMaps = {};
|
|
7569
|
+
internalData.mergeFooterColMaps = {};
|
|
7545
7570
|
reactData.mergeFootFlag++;
|
|
7546
7571
|
return nextTick().then(() => {
|
|
7547
7572
|
return updateStyle();
|
|
@@ -8783,6 +8808,13 @@ export default defineVxeComponent({
|
|
|
8783
8808
|
updateAfterFullData();
|
|
8784
8809
|
// 如果为虚拟树,将树结构拍平
|
|
8785
8810
|
fullList = handleVirtualTreeToList();
|
|
8811
|
+
// 更新数据后清除合并缓存,涉及分组、筛选、排序等
|
|
8812
|
+
internalData.mergeHeaderRowMaps = {};
|
|
8813
|
+
internalData.mergeHeaderColMaps = {};
|
|
8814
|
+
internalData.mergeBodyRowMaps = {};
|
|
8815
|
+
internalData.mergeBodyColMaps = {};
|
|
8816
|
+
internalData.mergeFooterRowMaps = {};
|
|
8817
|
+
internalData.mergeFooterColMaps = {};
|
|
8786
8818
|
}
|
|
8787
8819
|
const tableData = scrollYLoad ? fullList.slice(scrollYStore.startIndex, scrollYStore.endIndex) : fullList.slice(0);
|
|
8788
8820
|
const visibleDataRowIdMaps = {};
|
|
@@ -9744,22 +9776,31 @@ export default defineVxeComponent({
|
|
|
9744
9776
|
handleSelectRow({ row }, checked, isForce) {
|
|
9745
9777
|
$xeTable.handleBatchSelectRows([row], checked, isForce);
|
|
9746
9778
|
},
|
|
9779
|
+
handleUpdateHeaderMerge() {
|
|
9780
|
+
const { mergeHeaderList } = internalData;
|
|
9781
|
+
const { mergeMaps, mergeRowMaps, mergeColMaps } = buildMergeData(mergeHeaderList);
|
|
9782
|
+
internalData.mergeHeaderCellMaps = mergeMaps;
|
|
9783
|
+
internalData.mergeHeaderRowMaps = mergeRowMaps;
|
|
9784
|
+
internalData.mergeHeaderColMaps = mergeColMaps;
|
|
9785
|
+
reactData.mergeHeadFlag++;
|
|
9786
|
+
},
|
|
9747
9787
|
/**
|
|
9748
9788
|
* 处理合并
|
|
9749
9789
|
*/
|
|
9750
9790
|
handleUpdateBodyMerge() {
|
|
9751
9791
|
const { mergeBodyList } = internalData;
|
|
9752
|
-
|
|
9792
|
+
const { mergeMaps, mergeRowMaps, mergeColMaps } = buildMergeData(mergeBodyList);
|
|
9793
|
+
internalData.mergeBodyCellMaps = mergeMaps;
|
|
9794
|
+
internalData.mergeBodyRowMaps = mergeRowMaps;
|
|
9795
|
+
internalData.mergeBodyColMaps = mergeColMaps;
|
|
9753
9796
|
reactData.mergeBodyFlag++;
|
|
9754
9797
|
},
|
|
9755
|
-
handleUpdateHeaderMerge() {
|
|
9756
|
-
const { mergeHeaderList } = internalData;
|
|
9757
|
-
internalData.mergeHeaderCellMaps = buildMergeData(mergeHeaderList);
|
|
9758
|
-
reactData.mergeHeadFlag++;
|
|
9759
|
-
},
|
|
9760
9798
|
handleUpdateFooterMerge() {
|
|
9761
9799
|
const { mergeFooterList } = internalData;
|
|
9762
|
-
|
|
9800
|
+
const { mergeMaps, mergeRowMaps, mergeColMaps } = buildMergeData(mergeFooterList);
|
|
9801
|
+
internalData.mergeFooterCellMaps = mergeMaps;
|
|
9802
|
+
internalData.mergeFooterRowMaps = mergeRowMaps;
|
|
9803
|
+
internalData.mergeFooterColMaps = mergeColMaps;
|
|
9763
9804
|
reactData.mergeFootFlag++;
|
|
9764
9805
|
},
|
|
9765
9806
|
handleAggregateSummaryData() {
|
|
@@ -11901,8 +11942,9 @@ export default defineVxeComponent({
|
|
|
11901
11942
|
if (isRollX) {
|
|
11902
11943
|
evnt.preventDefault();
|
|
11903
11944
|
internalData.inWheelScroll = true;
|
|
11904
|
-
|
|
11905
|
-
|
|
11945
|
+
wheelScrollLeftTo(scrollLeft, (offsetLeft) => {
|
|
11946
|
+
internalData.inWheelScroll = true;
|
|
11947
|
+
const currLeftNum = offsetLeft;
|
|
11906
11948
|
setScrollLeft(xHandleEl, currLeftNum);
|
|
11907
11949
|
setScrollLeft(bodyScrollElem, currLeftNum);
|
|
11908
11950
|
setScrollLeft(headerScrollElem, currLeftNum);
|
|
@@ -11914,30 +11956,14 @@ export default defineVxeComponent({
|
|
|
11914
11956
|
type: 'table',
|
|
11915
11957
|
fixed: ''
|
|
11916
11958
|
});
|
|
11917
|
-
}
|
|
11918
|
-
else {
|
|
11919
|
-
wheelScrollLeftTo(scrollLeft, (offsetLeft) => {
|
|
11920
|
-
internalData.inWheelScroll = true;
|
|
11921
|
-
const currLeftNum = offsetLeft;
|
|
11922
|
-
setScrollLeft(xHandleEl, currLeftNum);
|
|
11923
|
-
setScrollLeft(bodyScrollElem, currLeftNum);
|
|
11924
|
-
setScrollLeft(headerScrollElem, currLeftNum);
|
|
11925
|
-
setScrollLeft(footerScrollElem, currLeftNum);
|
|
11926
|
-
if (scrollXLoad) {
|
|
11927
|
-
$xeTable.triggerScrollXEvent(evnt);
|
|
11928
|
-
}
|
|
11929
|
-
$xeTable.handleScrollEvent(evnt, isRollY, isRollX, bodyScrollElem.scrollTop, currLeftNum, {
|
|
11930
|
-
type: 'table',
|
|
11931
|
-
fixed: ''
|
|
11932
|
-
});
|
|
11933
|
-
});
|
|
11934
|
-
}
|
|
11959
|
+
});
|
|
11935
11960
|
}
|
|
11936
11961
|
if (isRollY) {
|
|
11937
11962
|
evnt.preventDefault();
|
|
11938
11963
|
internalData.inWheelScroll = true;
|
|
11939
|
-
|
|
11940
|
-
|
|
11964
|
+
wheelScrollTopTo(scrollTop, (offsetTop) => {
|
|
11965
|
+
internalData.inWheelScroll = true;
|
|
11966
|
+
const currTopNum = offsetTop;
|
|
11941
11967
|
setScrollTop(yHandleEl, currTopNum);
|
|
11942
11968
|
setScrollTop(bodyScrollElem, currTopNum);
|
|
11943
11969
|
setScrollTop(leftScrollElem, currTopNum);
|
|
@@ -11947,30 +11973,11 @@ export default defineVxeComponent({
|
|
|
11947
11973
|
if (scrollYLoad) {
|
|
11948
11974
|
$xeTable.triggerScrollYEvent(evnt);
|
|
11949
11975
|
}
|
|
11950
|
-
$xeTable.handleScrollEvent(evnt, isRollY, isRollX,
|
|
11976
|
+
$xeTable.handleScrollEvent(evnt, isRollY, isRollX, offsetTop, bodyScrollElem.scrollLeft, {
|
|
11951
11977
|
type: 'table',
|
|
11952
11978
|
fixed: ''
|
|
11953
11979
|
});
|
|
11954
|
-
}
|
|
11955
|
-
else {
|
|
11956
|
-
scrollTopTo(scrollTop - currScrollTop, (offsetTop) => {
|
|
11957
|
-
internalData.inWheelScroll = true;
|
|
11958
|
-
const currTopNum = bodyScrollElem.scrollTop + offsetTop;
|
|
11959
|
-
setScrollTop(yHandleEl, currTopNum);
|
|
11960
|
-
setScrollTop(bodyScrollElem, currTopNum);
|
|
11961
|
-
setScrollTop(leftScrollElem, currTopNum);
|
|
11962
|
-
setScrollTop(rightScrollElem, currTopNum);
|
|
11963
|
-
setScrollTop(rowExpandEl, currTopNum);
|
|
11964
|
-
syncGanttScrollTop(currTopNum);
|
|
11965
|
-
if (scrollYLoad) {
|
|
11966
|
-
$xeTable.triggerScrollYEvent(evnt);
|
|
11967
|
-
}
|
|
11968
|
-
$xeTable.handleScrollEvent(evnt, isRollY, isRollX, currTopNum, bodyScrollElem.scrollLeft, {
|
|
11969
|
-
type: 'table',
|
|
11970
|
-
fixed: ''
|
|
11971
|
-
});
|
|
11972
|
-
});
|
|
11973
|
-
}
|
|
11980
|
+
});
|
|
11974
11981
|
}
|
|
11975
11982
|
},
|
|
11976
11983
|
triggerVirtualScrollXEvent(evnt) {
|
|
@@ -13422,6 +13429,8 @@ export default defineVxeComponent({
|
|
|
13422
13429
|
// const keyboardOpts = computeKeyboardOpts.value
|
|
13423
13430
|
const rowDragOpts = computeRowDragOpts.value;
|
|
13424
13431
|
const areaOpts = computeAreaOpts.value;
|
|
13432
|
+
const sortOpts = computeSortOpts.value;
|
|
13433
|
+
const filterOpts = computeFilterOpts.value;
|
|
13425
13434
|
const { groupFields } = aggregateOpts;
|
|
13426
13435
|
if ($xeGantt) {
|
|
13427
13436
|
const { refClassifyWrapperElem } = $xeGantt.getRefMaps();
|
|
@@ -13461,6 +13470,14 @@ export default defineVxeComponent({
|
|
|
13461
13470
|
if (treeConfig && !treeOpts.transform && props.stripe) {
|
|
13462
13471
|
warnLog('vxe.error.noTree', ['stripe']);
|
|
13463
13472
|
}
|
|
13473
|
+
if (treeConfig && !treeOpts.transform) {
|
|
13474
|
+
if (sortOpts.isDeep) {
|
|
13475
|
+
warnLog('vxe.error.reqSupportProp', ['transform=false', 'sort-config.isDeep=false']);
|
|
13476
|
+
}
|
|
13477
|
+
if (filterOpts.isDeep) {
|
|
13478
|
+
warnLog('vxe.error.reqSupportProp', ['transform=false', 'filter-config.isDeep=false']);
|
|
13479
|
+
}
|
|
13480
|
+
}
|
|
13464
13481
|
if (props.showFooter && !(props.footerMethod || props.footerData)) {
|
|
13465
13482
|
warnLog('vxe.error.reqProp', ['footer-data | footer-method']);
|
|
13466
13483
|
}
|
package/es/table/src/util.js
CHANGED
|
@@ -87,16 +87,22 @@ export function createInternalData() {
|
|
|
87
87
|
mergeHeaderMaps: {},
|
|
88
88
|
// 已合并单元格数据集合
|
|
89
89
|
mergeHeaderCellMaps: {},
|
|
90
|
+
mergeHeaderRowMaps: {},
|
|
91
|
+
mergeHeaderColMaps: {},
|
|
90
92
|
// 合并单元格的数据
|
|
91
93
|
mergeBodyList: [],
|
|
92
94
|
mergeBodyMaps: {},
|
|
93
95
|
// 已合并单元格数据集合
|
|
94
96
|
mergeBodyCellMaps: {},
|
|
97
|
+
mergeBodyRowMaps: {},
|
|
98
|
+
mergeBodyColMaps: {},
|
|
95
99
|
// 合并表尾的数据
|
|
96
100
|
mergeFooterList: [],
|
|
97
101
|
mergeFooterMaps: {},
|
|
98
102
|
// 已合并表尾数据集合
|
|
99
103
|
mergeFooterCellMaps: {},
|
|
104
|
+
mergeFooterRowMaps: {},
|
|
105
|
+
mergeFooterColMaps: {},
|
|
100
106
|
// 已展开的行集合
|
|
101
107
|
rowExpandedMaps: {},
|
|
102
108
|
// 懒加载中的展开行的集合
|
package/es/table/style.css
CHANGED
|
@@ -2507,12 +2507,12 @@
|
|
|
2507
2507
|
}
|
|
2508
2508
|
|
|
2509
2509
|
/*header*/
|
|
2510
|
-
.vxe-table .vxe-table--header-wrapper {
|
|
2511
|
-
color: var(--vxe-ui-table-header-font-color);
|
|
2512
|
-
}
|
|
2513
2510
|
.vxe-table {
|
|
2514
2511
|
/*排序*/
|
|
2515
2512
|
}
|
|
2513
|
+
.vxe-table .vxe-table--header-wrapper {
|
|
2514
|
+
color: var(--vxe-ui-table-header-font-color);
|
|
2515
|
+
}
|
|
2516
2516
|
.vxe-table .vxe-cell--sort {
|
|
2517
2517
|
text-align: center;
|
|
2518
2518
|
position: relative;
|
|
@@ -2866,6 +2866,21 @@
|
|
|
2866
2866
|
color: var(--vxe-ui-font-color);
|
|
2867
2867
|
font-family: var(--vxe-ui-font-family);
|
|
2868
2868
|
direction: ltr;
|
|
2869
|
+
/*边框*/
|
|
2870
|
+
/*边框线*/
|
|
2871
|
+
/*树形节点*/
|
|
2872
|
+
/*行分组*/
|
|
2873
|
+
/*单元格高度*/
|
|
2874
|
+
/*溢出列*/
|
|
2875
|
+
/*展开行*/
|
|
2876
|
+
/*拖拽列*/
|
|
2877
|
+
/*拖拽行把柄*/
|
|
2878
|
+
/*暂无数据*/
|
|
2879
|
+
/*校验不通过*/
|
|
2880
|
+
/*已废弃,旧的校验样式**/
|
|
2881
|
+
/*单元格标记删除状态*/
|
|
2882
|
+
/*单元格编辑状态*/
|
|
2883
|
+
/*可编辑*/
|
|
2869
2884
|
}
|
|
2870
2885
|
.vxe-table--render-default .vxe-table--body-wrapper {
|
|
2871
2886
|
background-color: var(--vxe-ui-layout-background-color);
|
|
@@ -3034,9 +3049,6 @@
|
|
|
3034
3049
|
.vxe-table--render-default .vxe-body--row.row--hover.row--current > .vxe-body--column {
|
|
3035
3050
|
background-color: var(--vxe-ui-table-row-hover-current-background-color);
|
|
3036
3051
|
}
|
|
3037
|
-
.vxe-table--render-default {
|
|
3038
|
-
/*边框*/
|
|
3039
|
-
}
|
|
3040
3052
|
.vxe-table--render-default.border--default.sy-pos--right .vxe-table--scroll-y-top-corner, .vxe-table--render-default.border--full.sy-pos--right .vxe-table--scroll-y-top-corner, .vxe-table--render-default.border--outer.sy-pos--right .vxe-table--scroll-y-top-corner, .vxe-table--render-default.border--inner.sy-pos--right .vxe-table--scroll-y-top-corner {
|
|
3041
3053
|
background-image: linear-gradient(var(--vxe-ui-table-border-color), var(--vxe-ui-table-border-color)), linear-gradient(var(--vxe-ui-table-border-color), var(--vxe-ui-table-border-color));
|
|
3042
3054
|
background-repeat: no-repeat;
|
|
@@ -3401,9 +3413,6 @@
|
|
|
3401
3413
|
width: 0;
|
|
3402
3414
|
float: left;
|
|
3403
3415
|
}
|
|
3404
|
-
.vxe-table--render-default {
|
|
3405
|
-
/*边框线*/
|
|
3406
|
-
}
|
|
3407
3416
|
.vxe-table--render-default .vxe-table--border-line {
|
|
3408
3417
|
position: absolute;
|
|
3409
3418
|
top: 0;
|
|
@@ -3414,9 +3423,6 @@
|
|
|
3414
3423
|
pointer-events: none;
|
|
3415
3424
|
border: var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color);
|
|
3416
3425
|
}
|
|
3417
|
-
.vxe-table--render-default {
|
|
3418
|
-
/*树形节点*/
|
|
3419
|
-
}
|
|
3420
3426
|
.vxe-table--render-default .vxe-tree--line-wrapper {
|
|
3421
3427
|
position: relative;
|
|
3422
3428
|
display: block;
|
|
@@ -3463,9 +3469,6 @@
|
|
|
3463
3469
|
user-select: none;
|
|
3464
3470
|
cursor: pointer;
|
|
3465
3471
|
}
|
|
3466
|
-
.vxe-table--render-default {
|
|
3467
|
-
/*行分组*/
|
|
3468
|
-
}
|
|
3469
3472
|
.vxe-table--render-default .vxe-row-group--node-btn:hover {
|
|
3470
3473
|
color: var(--vxe-ui-font-color);
|
|
3471
3474
|
}
|
|
@@ -3474,9 +3477,6 @@
|
|
|
3474
3477
|
color: var(--vxe-ui-font-lighten-color);
|
|
3475
3478
|
transition: transform 0.1s ease-in-out;
|
|
3476
3479
|
}
|
|
3477
|
-
.vxe-table--render-default {
|
|
3478
|
-
/*单元格高度*/
|
|
3479
|
-
}
|
|
3480
3480
|
.vxe-table--render-default .vxe-body--column.col--ellipsis > .vxe-cell .vxe-row-group-cell,
|
|
3481
3481
|
.vxe-table--render-default .vxe-body--column.col--ellipsis > .vxe-cell .vxe-tree-cell {
|
|
3482
3482
|
overflow: hidden;
|
|
@@ -3497,9 +3497,6 @@
|
|
|
3497
3497
|
flex-direction: row;
|
|
3498
3498
|
align-items: center;
|
|
3499
3499
|
}
|
|
3500
|
-
.vxe-table--render-default {
|
|
3501
|
-
/*溢出列*/
|
|
3502
|
-
}
|
|
3503
3500
|
.vxe-table--render-default .vxe-header--column:not(.col--active).col--ellipsis > .vxe-cell,
|
|
3504
3501
|
.vxe-table--render-default .vxe-body--column:not(.col--active).col--ellipsis > .vxe-cell,
|
|
3505
3502
|
.vxe-table--render-default .vxe-footer--column:not(.col--active).col--ellipsis > .vxe-cell {
|
|
@@ -3533,9 +3530,6 @@
|
|
|
3533
3530
|
flex-direction: row;
|
|
3534
3531
|
align-items: center;
|
|
3535
3532
|
}
|
|
3536
|
-
.vxe-table--render-default {
|
|
3537
|
-
/*展开行*/
|
|
3538
|
-
}
|
|
3539
3533
|
.vxe-table--render-default .vxe-table--row-expanded-wrapper {
|
|
3540
3534
|
position: absolute;
|
|
3541
3535
|
top: 0;
|
|
@@ -3606,18 +3600,12 @@
|
|
|
3606
3600
|
overflow: auto;
|
|
3607
3601
|
outline: 0;
|
|
3608
3602
|
}
|
|
3609
|
-
.vxe-table--render-default {
|
|
3610
|
-
/*拖拽列*/
|
|
3611
|
-
}
|
|
3612
3603
|
.vxe-table--render-default .vxe-table--column.col--drag-move {
|
|
3613
3604
|
transition: transform 0.5s ease;
|
|
3614
3605
|
}
|
|
3615
3606
|
.vxe-table--render-default .vxe-table--column.col--drag-origin > .vxe-cell {
|
|
3616
3607
|
opacity: 0.3;
|
|
3617
3608
|
}
|
|
3618
|
-
.vxe-table--render-default {
|
|
3619
|
-
/*拖拽行把柄*/
|
|
3620
|
-
}
|
|
3621
3609
|
.vxe-table--render-default .vxe-cell--drag-handle {
|
|
3622
3610
|
-webkit-user-select: none;
|
|
3623
3611
|
-moz-user-select: none;
|
|
@@ -3681,9 +3669,6 @@
|
|
|
3681
3669
|
.vxe-table--render-default.size--mini .vxe-cell--radio {
|
|
3682
3670
|
font-size: var(--vxe-radio-font-size-mini);
|
|
3683
3671
|
}
|
|
3684
|
-
.vxe-table--render-default {
|
|
3685
|
-
/*暂无数据*/
|
|
3686
|
-
}
|
|
3687
3672
|
.vxe-table--render-default .vxe-table--empty-placeholder,
|
|
3688
3673
|
.vxe-table--render-default .vxe-table--empty-block {
|
|
3689
3674
|
color: var(--vxe-ui-input-placeholder-color);
|
|
@@ -3724,9 +3709,6 @@
|
|
|
3724
3709
|
.vxe-table--render-default .vxe-body--column.col--selected {
|
|
3725
3710
|
box-shadow: inset 0px 0px 0px 2px var(--vxe-ui-font-primary-color);
|
|
3726
3711
|
}
|
|
3727
|
-
.vxe-table--render-default {
|
|
3728
|
-
/*校验不通过*/
|
|
3729
|
-
}
|
|
3730
3712
|
.vxe-table--render-default .vxe-body--column .vxe-cell--valid-error-tip {
|
|
3731
3713
|
width: 100%;
|
|
3732
3714
|
position: absolute;
|
|
@@ -3783,9 +3765,6 @@
|
|
|
3783
3765
|
.vxe-table--render-default.valid-msg--full .vxe-body--row:last-child .vxe-cell--valid-error-tip {
|
|
3784
3766
|
top: calc(100% - 1.3em);
|
|
3785
3767
|
}
|
|
3786
|
-
.vxe-table--render-default {
|
|
3787
|
-
/*已废弃,旧的校验样式**/
|
|
3788
|
-
}
|
|
3789
3768
|
.vxe-table--render-default.old-cell-valid .vxe-body--column.col--valid-error .vxe-cell--valid-error-tip {
|
|
3790
3769
|
width: 320px;
|
|
3791
3770
|
position: absolute;
|
|
@@ -3813,9 +3792,6 @@
|
|
|
3813
3792
|
transform: translateX(0);
|
|
3814
3793
|
text-align: left;
|
|
3815
3794
|
}
|
|
3816
|
-
.vxe-table--render-default {
|
|
3817
|
-
/*单元格标记删除状态*/
|
|
3818
|
-
}
|
|
3819
3795
|
.vxe-table--render-default .vxe-body--row.row--pending {
|
|
3820
3796
|
color: var(--vxe-ui-font-disabled-color);
|
|
3821
3797
|
opacity: 0.5;
|
|
@@ -3835,9 +3811,6 @@
|
|
|
3835
3811
|
border-bottom: 1px solid var(--vxe-ui-table-validate-error-color);
|
|
3836
3812
|
z-index: 1;
|
|
3837
3813
|
}
|
|
3838
|
-
.vxe-table--render-default {
|
|
3839
|
-
/*单元格编辑状态*/
|
|
3840
|
-
}
|
|
3841
3814
|
.vxe-table--render-default .vxe-body--row.row--new > .vxe-body--column {
|
|
3842
3815
|
position: relative;
|
|
3843
3816
|
}
|
|
@@ -3864,9 +3837,6 @@
|
|
|
3864
3837
|
border-color: transparent var(--vxe-ui-table-cell-dirty-update-color) transparent transparent;
|
|
3865
3838
|
transform: rotate(45deg);
|
|
3866
3839
|
}
|
|
3867
|
-
.vxe-table--render-default {
|
|
3868
|
-
/*可编辑*/
|
|
3869
|
-
}
|
|
3870
3840
|
.vxe-table--render-default.vxe-editable.cell--highlight .vxe-body--column.col--active {
|
|
3871
3841
|
box-shadow: inset 0px 0px 0px 2px var(--vxe-ui-font-primary-color);
|
|
3872
3842
|
}
|
package/es/ui/index.js
CHANGED
package/es/ui/src/dom.js
CHANGED
|
@@ -206,3 +206,24 @@ export function scrollTopTo(diffNum, cb) {
|
|
|
206
206
|
};
|
|
207
207
|
requestAnimationFrame(step);
|
|
208
208
|
}
|
|
209
|
+
let wtlFrame;
|
|
210
|
+
export function wheelScrollLeftTo(scrollLeft, cb) {
|
|
211
|
+
if (wtlFrame) {
|
|
212
|
+
cancelAnimationFrame(wtlFrame);
|
|
213
|
+
}
|
|
214
|
+
wtlFrame = requestAnimationFrame(() => {
|
|
215
|
+
cb(scrollLeft);
|
|
216
|
+
wtlFrame = null;
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
let wtaFrame;
|
|
220
|
+
export function wheelScrollTopTo(diffNum, cb) {
|
|
221
|
+
if (wtaFrame) {
|
|
222
|
+
cancelAnimationFrame(wtaFrame);
|
|
223
|
+
}
|
|
224
|
+
wtaFrame = requestAnimationFrame(() => {
|
|
225
|
+
const offsetTop = diffNum;
|
|
226
|
+
cb(offsetTop);
|
|
227
|
+
wtaFrame = null;
|
|
228
|
+
});
|
|
229
|
+
}
|
package/es/ui/src/log.js
CHANGED