vxe-table 4.7.87 → 4.7.88
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/style.min.css +1 -1
- package/es/table/src/table.js +27 -8
- package/es/table/src/util.js +22 -12
- package/es/ui/index.js +2 -2
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +50 -26
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/src/table.js +27 -14
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/src/util.js +25 -11
- package/lib/table/src/util.min.js +1 -1
- package/lib/ui/index.js +2 -2
- 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/table.ts +27 -8
- package/packages/table/src/util.ts +22 -12
- package/styles/theme/base.scss +1 -0
- /package/es/{iconfont.1728483552005.ttf → iconfont.1729047473391.ttf} +0 -0
- /package/es/{iconfont.1728483552005.woff → iconfont.1729047473391.woff} +0 -0
- /package/es/{iconfont.1728483552005.woff2 → iconfont.1729047473391.woff2} +0 -0
- /package/lib/{iconfont.1728483552005.ttf → iconfont.1729047473391.ttf} +0 -0
- /package/lib/{iconfont.1728483552005.woff → iconfont.1729047473391.woff} +0 -0
- /package/lib/{iconfont.1728483552005.woff2 → iconfont.1729047473391.woff2} +0 -0
package/lib/table/src/util.js
CHANGED
|
@@ -476,31 +476,42 @@ function colToVisible($xeTable, column) {
|
|
|
476
476
|
refTableBody
|
|
477
477
|
} = $xeTable.getRefMaps();
|
|
478
478
|
const {
|
|
479
|
+
columnStore,
|
|
479
480
|
scrollXLoad
|
|
480
481
|
} = reactData;
|
|
481
482
|
const {
|
|
482
483
|
visibleColumn
|
|
483
484
|
} = internalData;
|
|
485
|
+
const {
|
|
486
|
+
leftList,
|
|
487
|
+
rightList
|
|
488
|
+
} = columnStore;
|
|
484
489
|
const tableBody = refTableBody.value;
|
|
485
490
|
const bodyElem = tableBody ? tableBody.$el : null;
|
|
491
|
+
let offsetFixedLeft = 0;
|
|
492
|
+
leftList.forEach(item => {
|
|
493
|
+
offsetFixedLeft += item.renderWidth;
|
|
494
|
+
});
|
|
495
|
+
let offsetFixedRight = 0;
|
|
496
|
+
rightList.forEach(item => {
|
|
497
|
+
offsetFixedRight += item.renderWidth;
|
|
498
|
+
});
|
|
486
499
|
if (bodyElem) {
|
|
500
|
+
const bodyWidth = bodyElem.clientWidth;
|
|
501
|
+
const bodySrcollLeft = bodyElem.scrollLeft;
|
|
487
502
|
const tdElem = bodyElem.querySelector(`.${column.id}`);
|
|
488
503
|
if (tdElem) {
|
|
489
|
-
const bodyWidth = bodyElem.clientWidth;
|
|
490
|
-
const bodySrcollLeft = bodyElem.scrollLeft;
|
|
491
504
|
const tdOffsetParent = tdElem.offsetParent;
|
|
492
505
|
const tdOffsetLeft = tdElem.offsetLeft + (tdOffsetParent ? tdOffsetParent.offsetLeft : 0);
|
|
493
506
|
const tdWidth = tdElem.clientWidth;
|
|
494
|
-
//
|
|
495
|
-
if (tdOffsetLeft < bodySrcollLeft
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
// 向右定位
|
|
500
|
-
return $xeTable.scrollTo(bodySrcollLeft + tdWidth);
|
|
507
|
+
// 检测是否在可视区中
|
|
508
|
+
if (tdOffsetLeft < bodySrcollLeft + offsetFixedLeft) {
|
|
509
|
+
return $xeTable.scrollTo(tdOffsetLeft - offsetFixedLeft - 1);
|
|
510
|
+
} else if (tdOffsetLeft + tdWidth >= bodyWidth + bodySrcollLeft - offsetFixedRight) {
|
|
511
|
+
return $xeTable.scrollTo(tdOffsetLeft - offsetFixedLeft - offsetFixedRight + 1);
|
|
501
512
|
}
|
|
502
513
|
} else {
|
|
503
|
-
//
|
|
514
|
+
// 检测是否在虚拟渲染可视区中
|
|
504
515
|
if (scrollXLoad) {
|
|
505
516
|
let scrollLeft = 0;
|
|
506
517
|
for (let index = 0; index < visibleColumn.length; index++) {
|
|
@@ -510,7 +521,10 @@ function colToVisible($xeTable, column) {
|
|
|
510
521
|
}
|
|
511
522
|
scrollLeft += currCol.renderWidth;
|
|
512
523
|
}
|
|
513
|
-
|
|
524
|
+
if (scrollLeft < bodySrcollLeft) {
|
|
525
|
+
return $xeTable.scrollTo(scrollLeft - offsetFixedLeft - 1);
|
|
526
|
+
}
|
|
527
|
+
return $xeTable.scrollTo(scrollLeft - offsetFixedLeft - offsetFixedRight + 1);
|
|
514
528
|
}
|
|
515
529
|
}
|
|
516
530
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.assembleColumn=assembleColumn,exports.clearTableAllStatus=clearTableAllStatus,exports.clearTableDefaultStatus=clearTableDefaultStatus,exports.colToVisible=colToVisible,exports.convertHeaderColumnToRows=void 0,exports.createColumn=createColumn,exports.destroyColumn=destroyColumn,exports.getCellValue=getCellValue,exports.getColReMaxWidth=getColReMaxWidth,exports.getColReMinWidth=getColReMinWidth,exports.getRootColumn=getRootColumn,exports.getRowUniqueId=getRowUniqueId,exports.getRowid=getRowid,exports.getRowkey=getRowkey,exports.handleFieldOrColumn=void 0,exports.isColumnInfo=isColumnInfo,exports.mergeBodyMethod=mergeBodyMethod,exports.removeScrollListener=removeScrollListener,exports.restoreScrollListener=restoreScrollListener,exports.restoreScrollLocation=restoreScrollLocation,exports.rowToVisible=rowToVisible,exports.setCellValue=setCellValue,exports.toFilters=toFilters,exports.toTreePathSeq=toTreePathSeq,exports.watchColumn=watchColumn;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_columnInfo=require("./columnInfo"),_dom=require("../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const getAllConvertColumns=(e,l)=>{const t=[];return e.forEach(e=>{e.parentId=l?l.id:null,e.visible&&(e.children&&e.children.length&&e.children.some(e=>e.visible)?(t.push(e),t.push(...getAllConvertColumns(e.children,e))):t.push(e))}),t},convertHeaderColumnToRows=e=>{let l=1;const r=(t,e)=>{if(e&&(t.level=e.level+1,l<t.level)&&(l=t.level),t.children&&t.children.length&&t.children.some(e=>e.visible)){let l=0;t.children.forEach(e=>{e.visible&&(r(e,t),l+=e.colSpan)}),t.colSpan=l}else t.colSpan=1},t=(e.forEach(e=>{e.level=1,r(e)}),[]);for(let e=0;e<l;e++)t.push([]);return getAllConvertColumns(e).forEach(e=>{e.children&&e.children.length&&e.children.some(e=>e.visible)?e.rowSpan=1:e.rowSpan=l-e.level+1,t[e.level-1].push(e)}),t};function restoreScrollLocation(e,l,t){const r=e["internalData"];return e.clearScroll().then(()=>{if(l||t)return r.lastScrollLeft=0,r.lastScrollTop=0,e.scrollTo(l,t)})}function removeScrollListener(e){e&&e._onscroll&&(e.onscroll=null)}function restoreScrollListener(e){e&&e._onscroll&&(e.onscroll=e._onscroll)}function getRowUniqueId(){return _xeUtils.default.uniqueId("row_")}function getRowkey(e){var l=e["props"],e=e.getComputeMaps()["computeRowOpts"],l=l["rowId"],e=e.value;return l||e.keyField||"_X_ROW_KEY"}function getRowid(e,l){l=_xeUtils.default.get(l,getRowkey(e));return _xeUtils.default.eqNull(l)?"":encodeURIComponent(l)}exports.convertHeaderColumnToRows=convertHeaderColumnToRows;const handleFieldOrColumn=(e,l)=>l?_xeUtils.default.isString(l)?e.getColumnByField(l):l:null;function getPaddingLeftRightSize(e){return e?(e=getComputedStyle(e),_xeUtils.default.toNumber(e.paddingLeft)+_xeUtils.default.toNumber(e.paddingRight)):0}function getElemenMarginWidth(e){var l,t;return e?(t=getComputedStyle(e),l=_xeUtils.default.toNumber(t.marginLeft),t=_xeUtils.default.toNumber(t.marginRight),e.offsetWidth+l+t):0}function queryCellElement(e,l){return e.querySelector(".vxe-cell"+l)}function toFilters(e){return e&&_xeUtils.default.isArray(e)?e.map(({label:e,value:l,data:t,resetValue:r,checked:o})=>({label:e,value:l,data:t,resetValue:r,checked:!!o,_checked:!!o})):e}function toTreePathSeq(e){return e.map((e,l)=>l%2==0?Number(e)+1:".").join("")}function getCellValue(e,l){return _xeUtils.default.get(e,l.field)}function setCellValue(e,l,t){return _xeUtils.default.set(e,l.field,t)}function getColReMaxWidth(e){var l=e["$table"],l=l.getComputeMaps()["computeResizableOpts"],l=l.value["maxWidth"];if(l){e=_xeUtils.default.isFunction(l)?l(e):l;if("auto"!==e)return Math.max(1,_xeUtils.default.toNumber(e))}return-1}function getColReMinWidth(e){var{$table:l,column:t,cell:r}=e,o=l["props"],n=l.getComputeMaps()["computeResizableOpts"],n=n.value["minWidth"];if(n){e=_xeUtils.default.isFunction(n)?n(e):n;if("auto"!==e)return Math.max(1,_xeUtils.default.toNumber(e))}var i,a,n=o["showHeaderOverflow"],{showHeaderOverflow:e,minWidth:o}=t,t=_xeUtils.default.isUndefined(e)||_xeUtils.default.isNull(e)?n:e,n="title"===t||(!0===t||"tooltip"===t)||"ellipsis"===t;let u=_xeUtils.default.floor(1.6*(_xeUtils.default.toNumber(getComputedStyle(r).fontSize)||14))+(getPaddingLeftRightSize(r)+getPaddingLeftRightSize(queryCellElement(r,"")));if(n&&(e=getPaddingLeftRightSize(queryCellElement(r,"--title>.vxe-cell--checkbox")),t=getElemenMarginWidth(queryCellElement(r,">.vxe-cell--required-icon")),n=getElemenMarginWidth(queryCellElement(r,">.vxe-cell--edit-icon")),s=getElemenMarginWidth(queryCellElement(r,">.vxe-cell-title-prefix-icon")),i=getElemenMarginWidth(queryCellElement(r,">.vxe-cell-title-suffix-icon")),a=getElemenMarginWidth(queryCellElement(r,">.vxe-cell--sort")),r=getElemenMarginWidth(queryCellElement(r,">.vxe-cell--filter")),u+=e+t+n+s+i+r+a),o){var s,e=l.getRefMaps()["refTableBody"],t=e.value,n=t?t.$el:null;if(n){if((0,_dom.isScale)(o))return s=(n.clientWidth-1)/100,Math.max(u,Math.floor(_xeUtils.default.toInteger(o)*s));if((0,_dom.isPx)(o))return Math.max(u,_xeUtils.default.toInteger(o))}}return u}function isColumnInfo(e){return e&&(e.constructor===_columnInfo.ColumnInfo||e instanceof _columnInfo.ColumnInfo)}function createColumn(e,l,t){return isColumnInfo(l)?l:(0,_vue.reactive)(new _columnInfo.ColumnInfo(e,l,t))}function watchColumn(t,e,r){Object.keys(e).forEach(l=>{(0,_vue.watch)(()=>e[l],e=>{r.update(l,e),t&&("filters"===l?(t.setFilter(r,e),t.handleUpdateDataQueue()):["visible","fixed","width","minWidth","maxWidth"].includes(l)&&t.handleRefreshColumnQueue())})})}function assembleColumn(e,l,t,r){var e=e["reactData"],o=e["staticColumns"],n=l.parentNode,r=r?r.columnConfig:null,r=r?r.children:o;n&&r&&(r.splice(_xeUtils.default.arrayIndexOf(n.children,l),0,t),e.staticColumns=o.slice(0))}function destroyColumn(e,l){var e=e["reactData"],t=e["staticColumns"],r=_xeUtils.default.findTree(t,e=>e.id===l.id,{children:"children"});r&&r.items.splice(r.index,1),e.staticColumns=t.slice(0)}function getRootColumn(e,l){var e=e["internalData"],t=e["fullColumnIdData"];if(!l)return null;let r=l.parentId;for(;t[r];){const l=t[r].column;if(!(r=l.parentId))return l}return l}function mergeBodyMethod(l,t,r){for(let e=0;e<l.length;e++){var{row:o,col:n,rowspan:i,colspan:a}=l[e];if(-1<n&&-1<o&&i&&a){if(o===t&&n===r)return{rowspan:i,colspan:a};if(o<=t&&t<o+i&&n<=r&&r<n+a)return{rowspan:0,colspan:0}}}}function clearTableDefaultStatus(e){var{props:l,internalData:t}=e;return t.initStatus=!1,e.clearSort(),e.clearCurrentRow(),e.clearCurrentColumn(),e.clearRadioRow(),e.clearRadioReserve(),e.clearCheckboxRow(),e.clearCheckboxReserve(),e.clearRowExpand(),e.clearTreeExpand(),e.clearTreeExpandReserve(),e.clearPendingRow(),e.clearFilter&&e.clearFilter(),e.clearSelected&&(l.keyboardConfig||l.mouseConfig)&&e.clearSelected(),e.clearCellAreas&&l.mouseConfig&&(e.clearCellAreas(),e.clearCopyCellArea()),e.clearScroll()}function clearTableAllStatus(e){return e.clearFilter&&e.clearFilter(),clearTableDefaultStatus(e)}function rowToVisible(e,l){var{reactData:t,internalData:r}=e,o=e.getRefMaps()["refTableBody"],t=t["scrollYLoad"],{afterFullData:r,scrollYStore:n}=r,o=o.value,o=o?o.$el:null;if(o){var i=o.querySelector(`[rowid="${getRowid(e,l)}"]`);if(i){var a=o.clientHeight,o=o.scrollTop,u=i.offsetParent,u=i.offsetTop+(u?u.offsetTop:0),i=i.clientHeight;if(u<o||o+a<u)return e.scrollTo(null,u);if(a+o<=u+i)return e.scrollTo(null,o+i)}else if(t)return e.scrollTo(null,(e.findRowIndexOf(r,l)-1)*n.rowHeight)}return Promise.resolve()}function colToVisible(e,t){var{reactData:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.assembleColumn=assembleColumn,exports.clearTableAllStatus=clearTableAllStatus,exports.clearTableDefaultStatus=clearTableDefaultStatus,exports.colToVisible=colToVisible,exports.convertHeaderColumnToRows=void 0,exports.createColumn=createColumn,exports.destroyColumn=destroyColumn,exports.getCellValue=getCellValue,exports.getColReMaxWidth=getColReMaxWidth,exports.getColReMinWidth=getColReMinWidth,exports.getRootColumn=getRootColumn,exports.getRowUniqueId=getRowUniqueId,exports.getRowid=getRowid,exports.getRowkey=getRowkey,exports.handleFieldOrColumn=void 0,exports.isColumnInfo=isColumnInfo,exports.mergeBodyMethod=mergeBodyMethod,exports.removeScrollListener=removeScrollListener,exports.restoreScrollListener=restoreScrollListener,exports.restoreScrollLocation=restoreScrollLocation,exports.rowToVisible=rowToVisible,exports.setCellValue=setCellValue,exports.toFilters=toFilters,exports.toTreePathSeq=toTreePathSeq,exports.watchColumn=watchColumn;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_columnInfo=require("./columnInfo"),_dom=require("../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const getAllConvertColumns=(e,l)=>{const t=[];return e.forEach(e=>{e.parentId=l?l.id:null,e.visible&&(e.children&&e.children.length&&e.children.some(e=>e.visible)?(t.push(e),t.push(...getAllConvertColumns(e.children,e))):t.push(e))}),t},convertHeaderColumnToRows=e=>{let l=1;const r=(t,e)=>{if(e&&(t.level=e.level+1,l<t.level)&&(l=t.level),t.children&&t.children.length&&t.children.some(e=>e.visible)){let l=0;t.children.forEach(e=>{e.visible&&(r(e,t),l+=e.colSpan)}),t.colSpan=l}else t.colSpan=1},t=(e.forEach(e=>{e.level=1,r(e)}),[]);for(let e=0;e<l;e++)t.push([]);return getAllConvertColumns(e).forEach(e=>{e.children&&e.children.length&&e.children.some(e=>e.visible)?e.rowSpan=1:e.rowSpan=l-e.level+1,t[e.level-1].push(e)}),t};function restoreScrollLocation(e,l,t){const r=e["internalData"];return e.clearScroll().then(()=>{if(l||t)return r.lastScrollLeft=0,r.lastScrollTop=0,e.scrollTo(l,t)})}function removeScrollListener(e){e&&e._onscroll&&(e.onscroll=null)}function restoreScrollListener(e){e&&e._onscroll&&(e.onscroll=e._onscroll)}function getRowUniqueId(){return _xeUtils.default.uniqueId("row_")}function getRowkey(e){var l=e["props"],e=e.getComputeMaps()["computeRowOpts"],l=l["rowId"],e=e.value;return l||e.keyField||"_X_ROW_KEY"}function getRowid(e,l){l=_xeUtils.default.get(l,getRowkey(e));return _xeUtils.default.eqNull(l)?"":encodeURIComponent(l)}exports.convertHeaderColumnToRows=convertHeaderColumnToRows;const handleFieldOrColumn=(e,l)=>l?_xeUtils.default.isString(l)?e.getColumnByField(l):l:null;function getPaddingLeftRightSize(e){return e?(e=getComputedStyle(e),_xeUtils.default.toNumber(e.paddingLeft)+_xeUtils.default.toNumber(e.paddingRight)):0}function getElemenMarginWidth(e){var l,t;return e?(t=getComputedStyle(e),l=_xeUtils.default.toNumber(t.marginLeft),t=_xeUtils.default.toNumber(t.marginRight),e.offsetWidth+l+t):0}function queryCellElement(e,l){return e.querySelector(".vxe-cell"+l)}function toFilters(e){return e&&_xeUtils.default.isArray(e)?e.map(({label:e,value:l,data:t,resetValue:r,checked:o})=>({label:e,value:l,data:t,resetValue:r,checked:!!o,_checked:!!o})):e}function toTreePathSeq(e){return e.map((e,l)=>l%2==0?Number(e)+1:".").join("")}function getCellValue(e,l){return _xeUtils.default.get(e,l.field)}function setCellValue(e,l,t){return _xeUtils.default.set(e,l.field,t)}function getColReMaxWidth(e){var l=e["$table"],l=l.getComputeMaps()["computeResizableOpts"],l=l.value["maxWidth"];if(l){e=_xeUtils.default.isFunction(l)?l(e):l;if("auto"!==e)return Math.max(1,_xeUtils.default.toNumber(e))}return-1}function getColReMinWidth(e){var{$table:l,column:t,cell:r}=e,o=l["props"],n=l.getComputeMaps()["computeResizableOpts"],n=n.value["minWidth"];if(n){e=_xeUtils.default.isFunction(n)?n(e):n;if("auto"!==e)return Math.max(1,_xeUtils.default.toNumber(e))}var i,a,n=o["showHeaderOverflow"],{showHeaderOverflow:e,minWidth:o}=t,t=_xeUtils.default.isUndefined(e)||_xeUtils.default.isNull(e)?n:e,n="title"===t||(!0===t||"tooltip"===t)||"ellipsis"===t;let u=_xeUtils.default.floor(1.6*(_xeUtils.default.toNumber(getComputedStyle(r).fontSize)||14))+(getPaddingLeftRightSize(r)+getPaddingLeftRightSize(queryCellElement(r,"")));if(n&&(e=getPaddingLeftRightSize(queryCellElement(r,"--title>.vxe-cell--checkbox")),t=getElemenMarginWidth(queryCellElement(r,">.vxe-cell--required-icon")),n=getElemenMarginWidth(queryCellElement(r,">.vxe-cell--edit-icon")),s=getElemenMarginWidth(queryCellElement(r,">.vxe-cell-title-prefix-icon")),i=getElemenMarginWidth(queryCellElement(r,">.vxe-cell-title-suffix-icon")),a=getElemenMarginWidth(queryCellElement(r,">.vxe-cell--sort")),r=getElemenMarginWidth(queryCellElement(r,">.vxe-cell--filter")),u+=e+t+n+s+i+r+a),o){var s,e=l.getRefMaps()["refTableBody"],t=e.value,n=t?t.$el:null;if(n){if((0,_dom.isScale)(o))return s=(n.clientWidth-1)/100,Math.max(u,Math.floor(_xeUtils.default.toInteger(o)*s));if((0,_dom.isPx)(o))return Math.max(u,_xeUtils.default.toInteger(o))}}return u}function isColumnInfo(e){return e&&(e.constructor===_columnInfo.ColumnInfo||e instanceof _columnInfo.ColumnInfo)}function createColumn(e,l,t){return isColumnInfo(l)?l:(0,_vue.reactive)(new _columnInfo.ColumnInfo(e,l,t))}function watchColumn(t,e,r){Object.keys(e).forEach(l=>{(0,_vue.watch)(()=>e[l],e=>{r.update(l,e),t&&("filters"===l?(t.setFilter(r,e),t.handleUpdateDataQueue()):["visible","fixed","width","minWidth","maxWidth"].includes(l)&&t.handleRefreshColumnQueue())})})}function assembleColumn(e,l,t,r){var e=e["reactData"],o=e["staticColumns"],n=l.parentNode,r=r?r.columnConfig:null,r=r?r.children:o;n&&r&&(r.splice(_xeUtils.default.arrayIndexOf(n.children,l),0,t),e.staticColumns=o.slice(0))}function destroyColumn(e,l){var e=e["reactData"],t=e["staticColumns"],r=_xeUtils.default.findTree(t,e=>e.id===l.id,{children:"children"});r&&r.items.splice(r.index,1),e.staticColumns=t.slice(0)}function getRootColumn(e,l){var e=e["internalData"],t=e["fullColumnIdData"];if(!l)return null;let r=l.parentId;for(;t[r];){const l=t[r].column;if(!(r=l.parentId))return l}return l}function mergeBodyMethod(l,t,r){for(let e=0;e<l.length;e++){var{row:o,col:n,rowspan:i,colspan:a}=l[e];if(-1<n&&-1<o&&i&&a){if(o===t&&n===r)return{rowspan:i,colspan:a};if(o<=t&&t<o+i&&n<=r&&r<n+a)return{rowspan:0,colspan:0}}}}function clearTableDefaultStatus(e){var{props:l,internalData:t}=e;return t.initStatus=!1,e.clearSort(),e.clearCurrentRow(),e.clearCurrentColumn(),e.clearRadioRow(),e.clearRadioReserve(),e.clearCheckboxRow(),e.clearCheckboxReserve(),e.clearRowExpand(),e.clearTreeExpand(),e.clearTreeExpandReserve(),e.clearPendingRow(),e.clearFilter&&e.clearFilter(),e.clearSelected&&(l.keyboardConfig||l.mouseConfig)&&e.clearSelected(),e.clearCellAreas&&l.mouseConfig&&(e.clearCellAreas(),e.clearCopyCellArea()),e.clearScroll()}function clearTableAllStatus(e){return e.clearFilter&&e.clearFilter(),clearTableDefaultStatus(e)}function rowToVisible(e,l){var{reactData:t,internalData:r}=e,o=e.getRefMaps()["refTableBody"],t=t["scrollYLoad"],{afterFullData:r,scrollYStore:n}=r,o=o.value,o=o?o.$el:null;if(o){var i=o.querySelector(`[rowid="${getRowid(e,l)}"]`);if(i){var a=o.clientHeight,o=o.scrollTop,u=i.offsetParent,u=i.offsetTop+(u?u.offsetTop:0),i=i.clientHeight;if(u<o||o+a<u)return e.scrollTo(null,u);if(a+o<=u+i)return e.scrollTo(null,o+i)}else if(t)return e.scrollTo(null,(e.findRowIndexOf(r,l)-1)*n.rowHeight)}return Promise.resolve()}function colToVisible(e,t){var{reactData:r,internalData:l}=e,o=e.getRefMaps()["refTableBody"],{columnStore:r,scrollXLoad:n}=r,i=l["visibleColumn"],{leftList:l,rightList:r}=r,o=o.value,o=o?o.$el:null;let a=0,u=(l.forEach(e=>{a+=e.renderWidth}),0);if(r.forEach(e=>{u+=e.renderWidth}),o){l=o.clientWidth,r=o.scrollLeft,o=o.querySelector("."+t.id);if(o){var s=o.offsetParent,s=o.offsetLeft+(s?s.offsetLeft:0),o=o.clientWidth;if(s<r+a)return e.scrollTo(s-a-1);if(s+o>=l+r-u)return e.scrollTo(s-a-u+1)}else if(n){let l=0;for(let e=0;e<i.length;e++){var c=i[e];if(c===t||c.id===t.id)break;l+=c.renderWidth}return l<r?e.scrollTo(l-a-1):e.scrollTo(l-a-u+1)}}return Promise.resolve()}exports.handleFieldOrColumn=handleFieldOrColumn;
|
package/lib/ui/index.js
CHANGED
|
@@ -13,9 +13,9 @@ Object.defineProperty(exports, "VxeUI", {
|
|
|
13
13
|
exports.version = exports.validators = exports.use = exports.t = exports.setup = exports.setTheme = exports.setLanguage = exports.setIcon = exports.setI18n = exports.setConfig = exports.saveFile = exports.renderer = exports.readFile = exports.print = exports.modal = exports.menus = exports.log = exports.interceptor = exports.hooks = exports.globalResize = exports.globalEvents = exports.getTheme = exports.getIcon = exports.getI18n = exports.getConfig = exports.formats = exports.default = exports.config = exports.commands = exports.clipboard = exports._t = void 0;
|
|
14
14
|
var _core = require("@vxe-ui/core");
|
|
15
15
|
var _utils = require("./src/utils");
|
|
16
|
-
const version = exports.version = "4.7.
|
|
16
|
+
const version = exports.version = "4.7.88";
|
|
17
17
|
_core.VxeUI.version = version;
|
|
18
|
-
_core.VxeUI.tableVersion = "4.7.
|
|
18
|
+
_core.VxeUI.tableVersion = "4.7.88";
|
|
19
19
|
_core.VxeUI.setConfig({
|
|
20
20
|
emptyCell: ' ',
|
|
21
21
|
table: {
|
package/lib/ui/index.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.hooks=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");const version=exports.version="4.7.
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.hooks=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");const version=exports.version="4.7.88",iconPrefix=(_core.VxeUI.version=version,_core.VxeUI.tableVersion="4.7.88",_core.VxeUI.setConfig({emptyCell:" ",table:{fit:!0,showHeader:!0,animat:!0,delayHover:250,autoResize:!0,padding:!0,minHeight:144,resizeConfig:{refreshDelay:250},radioConfig:{strict:!0},checkboxConfig:{strict:!0},tooltipConfig:{enterable:!0},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single"},columnConfig:{maxFixedSize:4},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,showFooter:!0,placement:"top-right",modalOptions:{showMaximize:!0,mask:!0,lockView:!0,resize:!0,escClosable:!0}},sortConfig:{showIcon:!0,iconLayout:"vertical"},filterConfig:{showIcon:!0},treeConfig:{rowField:"id",parentField:"parentId",childrenField:"children",hasChildField:"hasChild",mapChildrenField:"_X_ROW_CHILD",indent:20,showIcon:!0},expandConfig:{showIcon:!0},editConfig:{showIcon:!0,showAsterisk:!0,autoFocus:!0},importConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},exportConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},printConfig:{},mouseConfig:{extension:!0},keyboardConfig:{isEsc:!0},areaConfig:{autoClear:!0,selectCellByHeader:!0},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},scrollX:{gt:60},scrollY:{gt:100}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0},toolbarConfig:{enabled:!0},proxyConfig:{enabled:!0,autoLoad:!0,showResponseMsg:!0,showActiveMsg:!0,props:{list:null,result:"result",total:"page.total",message:"message"}}},toolbar:{}}),"vxe-table-icon-"),setTheme=(_core.VxeUI.setIcon({TABLE_SORT_ASC:iconPrefix+"caret-up",TABLE_SORT_DESC:iconPrefix+"caret-down",TABLE_FILTER_NONE:iconPrefix+"funnel",TABLE_FILTER_MATCH:iconPrefix+"funnel",TABLE_EDIT:iconPrefix+"edit",TABLE_TITLE_PREFIX:iconPrefix+"question-circle-fill",TABLE_TITLE_SUFFIX:iconPrefix+"question-circle-fill",TABLE_TREE_LOADED:iconPrefix+"spinner roll",TABLE_TREE_OPEN:iconPrefix+"caret-right rotate90",TABLE_TREE_CLOSE:iconPrefix+"caret-right",TABLE_EXPAND_LOADED:iconPrefix+"spinner roll",TABLE_EXPAND_OPEN:iconPrefix+"arrow-right rotate90",TABLE_EXPAND_CLOSE:iconPrefix+"arrow-right",TABLE_CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",TABLE_CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",TABLE_CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",TABLE_RADIO_CHECKED:iconPrefix+"radio-checked-fill",TABLE_RADIO_UNCHECKED:iconPrefix+"radio-unchecked",TABLE_CUSTOM_SORT:iconPrefix+"drag-handle",TABLE_MENU_OPTIONS:iconPrefix+"arrow-right",TOOLBAR_TOOLS_REFRESH:iconPrefix+"repeat",TOOLBAR_TOOLS_REFRESH_LOADING:iconPrefix+"repeat roll",TOOLBAR_TOOLS_IMPORT:iconPrefix+"upload",TOOLBAR_TOOLS_EXPORT:iconPrefix+"download",TOOLBAR_TOOLS_PRINT:iconPrefix+"print",TOOLBAR_TOOLS_FULLSCREEN:iconPrefix+"fullscreen",TOOLBAR_TOOLS_MINIMIZE:iconPrefix+"minimize",TOOLBAR_TOOLS_CUSTOM:iconPrefix+"custom-column",TOOLBAR_TOOLS_FIXED_LEFT:iconPrefix+"fixed-left",TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:iconPrefix+"fixed-left-fill",TOOLBAR_TOOLS_FIXED_RIGHT:iconPrefix+"fixed-right",TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:iconPrefix+"fixed-right-fill"}),exports.setTheme=_core.VxeUI.setTheme),getTheme=exports.getTheme=_core.VxeUI.getTheme,setConfig=exports.setConfig=_core.VxeUI.setConfig,getConfig=exports.getConfig=_core.VxeUI.getConfig,setIcon=exports.setIcon=_core.VxeUI.setIcon,getIcon=exports.getIcon=_core.VxeUI.getIcon,setLanguage=exports.setLanguage=_core.VxeUI.setLanguage,setI18n=exports.setI18n=_core.VxeUI.setI18n,getI18n=exports.getI18n=_core.VxeUI.getI18n,globalEvents=exports.globalEvents=_core.VxeUI.globalEvents,globalResize=exports.globalResize=_core.VxeUI.globalResize,renderer=exports.renderer=_core.VxeUI.renderer,validators=exports.validators=_core.VxeUI.validators,menus=exports.menus=_core.VxeUI.menus,formats=exports.formats=_core.VxeUI.formats,commands=exports.commands=_core.VxeUI.commands,interceptor=exports.interceptor=_core.VxeUI.interceptor,clipboard=exports.clipboard=_core.VxeUI.clipboard,log=exports.log=_core.VxeUI.log,hooks=exports.hooks=_core.VxeUI.hooks,use=exports.use=_core.VxeUI.use,setup=e=>_core.VxeUI.setConfig(e),config=(exports.setup=setup,_core.VxeUI.setup=setup,e=>_core.VxeUI.setConfig(e)),t=(exports.config=config,_core.VxeUI.config=config,(e,o)=>_core.VxeUI.getI18n(e,o)),_t=(exports.t=t,_core.VxeUI.t=t,(e,o)=>(0,_utils.getFuncText)(e,o)),VXETable=(exports._t=_t,_core.VxeUI._t=_t,exports.VXETable=_core.VxeUI),saveFile=e=>_core.VxeUI.saveFile(e),readFile=(exports.saveFile=saveFile,e=>_core.VxeUI.readFile(e)),print=(exports.readFile=readFile,e=>_core.VxeUI.print(e)),modal=(exports.print=print,exports.modal={get(e){return _core.VxeUI.modal.get(e)},close(e){return _core.VxeUI.modal.close(e)},open(e){return _core.VxeUI.modal.open(e)},alert(e,o,r){return _core.VxeUI.modal.alert(e,o,r)},confirm(e,o,r){return _core.VxeUI.modal.confirm(e,o,r)},message(e,o){return _core.VxeUI.modal.message(e,o)},notification(e,o,r){return _core.VxeUI.modal.notification(e,o,r)}});var _default=exports.default=_core.VxeUI;
|
package/lib/ui/src/log.js
CHANGED
|
@@ -8,6 +8,6 @@ var _core = require("@vxe-ui/core");
|
|
|
8
8
|
const {
|
|
9
9
|
log
|
|
10
10
|
} = _core.VxeUI;
|
|
11
|
-
const version = `table v${"4.7.
|
|
11
|
+
const version = `table v${"4.7.88"}`;
|
|
12
12
|
const warnLog = exports.warnLog = log.create('warn', version);
|
|
13
13
|
const errLog = exports.errLog = log.create('error', version);
|
package/lib/ui/src/log.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");const log=_core.VxeUI["log"],version="table v4.7.
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");const log=_core.VxeUI["log"],version="table v4.7.88",warnLog=exports.warnLog=log.create("warn",version),errLog=exports.errLog=log.create("error",version);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vxe-table",
|
|
3
|
-
"version": "4.7.
|
|
3
|
+
"version": "4.7.88",
|
|
4
4
|
"description": "一个基于 vue 的 PC 端表格组件,支持增删改查、虚拟树、列拖拽,懒加载、快捷菜单、数据校验、树形结构、打印、导入导出、自定义模板、渲染器、JSON 配置式...",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"update": "npm install --legacy-peer-deps",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"style": "lib/style.css",
|
|
29
29
|
"typings": "types/index.d.ts",
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"vxe-pc-ui": "^4.2.
|
|
31
|
+
"vxe-pc-ui": "^4.2.20"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@types/resize-observer-browser": "^0.1.11",
|
|
@@ -801,7 +801,7 @@ export default defineComponent({
|
|
|
801
801
|
return { rowHeight: 0, visibleSize: 8 }
|
|
802
802
|
}
|
|
803
803
|
|
|
804
|
-
const
|
|
804
|
+
const calculateMergerOffsetIndex = (list: any[], offsetItem: any, type: 'row' | 'col') => {
|
|
805
805
|
for (let mcIndex = 0, len = list.length; mcIndex < len; mcIndex++) {
|
|
806
806
|
const mergeItem = list[mcIndex]
|
|
807
807
|
const { startIndex, endIndex } = offsetItem
|
|
@@ -1142,7 +1142,9 @@ export default defineComponent({
|
|
|
1142
1142
|
})
|
|
1143
1143
|
} else {
|
|
1144
1144
|
const labelEl = cellEl.firstChild as HTMLElement
|
|
1145
|
-
|
|
1145
|
+
if (labelEl) {
|
|
1146
|
+
titleWidth = labelEl.offsetWidth
|
|
1147
|
+
}
|
|
1146
1148
|
}
|
|
1147
1149
|
if (titleWidth) {
|
|
1148
1150
|
colWidth = Math.max(colWidth, Math.ceil(titleWidth) + 4)
|
|
@@ -1373,6 +1375,7 @@ export default defineComponent({
|
|
|
1373
1375
|
const { treeConfig } = props
|
|
1374
1376
|
const { treeExpandedMaps } = reactData
|
|
1375
1377
|
const treeOpts = computeTreeOpts.value
|
|
1378
|
+
const childrenField = treeOpts.children || treeOpts.childrenField
|
|
1376
1379
|
if (treeConfig && treeOpts.transform) {
|
|
1377
1380
|
const fullData: any[] = []
|
|
1378
1381
|
const expandMaps: {
|
|
@@ -1385,7 +1388,7 @@ export default defineComponent({
|
|
|
1385
1388
|
expandMaps[rowid] = 1
|
|
1386
1389
|
fullData.push(row)
|
|
1387
1390
|
}
|
|
1388
|
-
}, { children:
|
|
1391
|
+
}, { children: childrenField })
|
|
1389
1392
|
internalData.afterFullData = fullData
|
|
1390
1393
|
updateScrollYStatus(fullData)
|
|
1391
1394
|
return fullData
|
|
@@ -1403,6 +1406,7 @@ export default defineComponent({
|
|
|
1403
1406
|
const filterOpts = computeFilterOpts.value
|
|
1404
1407
|
const sortOpts = computeSortOpts.value
|
|
1405
1408
|
const treeOpts = computeTreeOpts.value
|
|
1409
|
+
const childrenField = treeOpts.children || treeOpts.childrenField
|
|
1406
1410
|
const { transform } = treeOpts
|
|
1407
1411
|
const { remote: allRemoteFilter, filterMethod: allFilterMethod } = filterOpts
|
|
1408
1412
|
const { remote: allRemoteSort, sortMethod: allSortMethod, multiple: sortMultiple, chronological } = sortOpts
|
|
@@ -1464,7 +1468,12 @@ export default defineComponent({
|
|
|
1464
1468
|
}
|
|
1465
1469
|
if (treeConfig && transform) {
|
|
1466
1470
|
// 筛选虚拟树
|
|
1467
|
-
tableTree = XEUtils.searchTree(tableFullTreeData, handleFilter, {
|
|
1471
|
+
tableTree = XEUtils.searchTree(tableFullTreeData, handleFilter, {
|
|
1472
|
+
original: true,
|
|
1473
|
+
isEvery: true,
|
|
1474
|
+
children: treeOpts.mapChildrenField,
|
|
1475
|
+
mapChildren: childrenField
|
|
1476
|
+
})
|
|
1468
1477
|
tableData = tableTree
|
|
1469
1478
|
} else {
|
|
1470
1479
|
tableData = treeConfig ? tableFullTreeData.filter(handleFilter) : tableFullData.filter(handleFilter)
|
|
@@ -1473,7 +1482,12 @@ export default defineComponent({
|
|
|
1473
1482
|
} else {
|
|
1474
1483
|
if (treeConfig && transform) {
|
|
1475
1484
|
// 还原虚拟树
|
|
1476
|
-
tableTree = XEUtils.searchTree(tableFullTreeData, () => true, {
|
|
1485
|
+
tableTree = XEUtils.searchTree(tableFullTreeData, () => true, {
|
|
1486
|
+
original: true,
|
|
1487
|
+
isEvery: true,
|
|
1488
|
+
children: treeOpts.mapChildrenField,
|
|
1489
|
+
mapChildren: childrenField
|
|
1490
|
+
})
|
|
1477
1491
|
tableData = tableTree
|
|
1478
1492
|
} else {
|
|
1479
1493
|
tableData = treeConfig ? tableFullTreeData.slice(0) : tableFullData.slice(0)
|
|
@@ -1506,7 +1520,12 @@ export default defineComponent({
|
|
|
1506
1520
|
} else {
|
|
1507
1521
|
if (treeConfig && transform) {
|
|
1508
1522
|
// 还原虚拟树
|
|
1509
|
-
tableTree = XEUtils.searchTree(tableFullTreeData, () => true, {
|
|
1523
|
+
tableTree = XEUtils.searchTree(tableFullTreeData, () => true, {
|
|
1524
|
+
original: true,
|
|
1525
|
+
isEvery: true,
|
|
1526
|
+
children: treeOpts.mapChildrenField,
|
|
1527
|
+
mapChildren: childrenField
|
|
1528
|
+
})
|
|
1510
1529
|
tableData = tableTree
|
|
1511
1530
|
} else {
|
|
1512
1531
|
tableData = treeConfig ? tableFullTreeData.slice(0) : tableFullData.slice(0)
|
|
@@ -2441,7 +2460,7 @@ export default defineComponent({
|
|
|
2441
2460
|
startIndex: Math.max(0, toVisibleIndex - 1 - offsetSize),
|
|
2442
2461
|
endIndex: toVisibleIndex + visibleSize + offsetSize
|
|
2443
2462
|
}
|
|
2444
|
-
|
|
2463
|
+
calculateMergerOffsetIndex(mergeList.concat(mergeFooterList), offsetItem, 'col')
|
|
2445
2464
|
const { startIndex: offsetStartIndex, endIndex: offsetEndIndex } = offsetItem
|
|
2446
2465
|
if (toVisibleIndex <= startIndex || toVisibleIndex >= endIndex - visibleSize - 1) {
|
|
2447
2466
|
if (startIndex !== offsetStartIndex || endIndex !== offsetEndIndex) {
|
|
@@ -2729,7 +2748,7 @@ export default defineComponent({
|
|
|
2729
2748
|
startIndex: Math.max(0, toVisibleIndex - 1 - offsetSize),
|
|
2730
2749
|
endIndex: toVisibleIndex + visibleSize + offsetSize
|
|
2731
2750
|
}
|
|
2732
|
-
|
|
2751
|
+
calculateMergerOffsetIndex(mergeList, offsetItem, 'row')
|
|
2733
2752
|
const { startIndex: offsetStartIndex, endIndex: offsetEndIndex } = offsetItem
|
|
2734
2753
|
if (toVisibleIndex <= startIndex || toVisibleIndex >= endIndex - visibleSize - 1) {
|
|
2735
2754
|
if (startIndex !== offsetStartIndex || endIndex !== offsetEndIndex) {
|
|
@@ -413,28 +413,35 @@ export function rowToVisible ($xeTable: VxeTableConstructor & VxeTablePrivateMet
|
|
|
413
413
|
export function colToVisible ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, column: VxeTableDefines.ColumnInfo) {
|
|
414
414
|
const { reactData, internalData } = $xeTable
|
|
415
415
|
const { refTableBody } = $xeTable.getRefMaps()
|
|
416
|
-
const { scrollXLoad } = reactData
|
|
416
|
+
const { columnStore, scrollXLoad } = reactData
|
|
417
417
|
const { visibleColumn } = internalData
|
|
418
|
+
const { leftList, rightList } = columnStore
|
|
418
419
|
const tableBody = refTableBody.value
|
|
419
420
|
const bodyElem = tableBody ? tableBody.$el as HTMLDivElement : null
|
|
421
|
+
let offsetFixedLeft = 0
|
|
422
|
+
leftList.forEach(item => {
|
|
423
|
+
offsetFixedLeft += item.renderWidth
|
|
424
|
+
})
|
|
425
|
+
let offsetFixedRight = 0
|
|
426
|
+
rightList.forEach(item => {
|
|
427
|
+
offsetFixedRight += item.renderWidth
|
|
428
|
+
})
|
|
420
429
|
if (bodyElem) {
|
|
430
|
+
const bodyWidth = bodyElem.clientWidth
|
|
431
|
+
const bodySrcollLeft = bodyElem.scrollLeft
|
|
421
432
|
const tdElem: HTMLTableCellElement | null = bodyElem.querySelector(`.${column.id}`)
|
|
422
433
|
if (tdElem) {
|
|
423
|
-
const bodyWidth = bodyElem.clientWidth
|
|
424
|
-
const bodySrcollLeft = bodyElem.scrollLeft
|
|
425
434
|
const tdOffsetParent = tdElem.offsetParent as HTMLElement
|
|
426
435
|
const tdOffsetLeft = tdElem.offsetLeft + (tdOffsetParent ? tdOffsetParent.offsetLeft : 0)
|
|
427
436
|
const tdWidth = tdElem.clientWidth
|
|
428
|
-
//
|
|
429
|
-
if (tdOffsetLeft < bodySrcollLeft
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
// 向右定位
|
|
434
|
-
return $xeTable.scrollTo(bodySrcollLeft + tdWidth)
|
|
437
|
+
// 检测是否在可视区中
|
|
438
|
+
if (tdOffsetLeft < (bodySrcollLeft + offsetFixedLeft)) {
|
|
439
|
+
return $xeTable.scrollTo(tdOffsetLeft - offsetFixedLeft - 1)
|
|
440
|
+
} else if ((tdOffsetLeft + tdWidth) >= (bodyWidth + bodySrcollLeft - offsetFixedRight)) {
|
|
441
|
+
return $xeTable.scrollTo(tdOffsetLeft - offsetFixedLeft - offsetFixedRight + 1)
|
|
435
442
|
}
|
|
436
443
|
} else {
|
|
437
|
-
//
|
|
444
|
+
// 检测是否在虚拟渲染可视区中
|
|
438
445
|
if (scrollXLoad) {
|
|
439
446
|
let scrollLeft = 0
|
|
440
447
|
for (let index = 0; index < visibleColumn.length; index++) {
|
|
@@ -444,7 +451,10 @@ export function colToVisible ($xeTable: VxeTableConstructor & VxeTablePrivateMet
|
|
|
444
451
|
}
|
|
445
452
|
scrollLeft += currCol.renderWidth
|
|
446
453
|
}
|
|
447
|
-
|
|
454
|
+
if (scrollLeft < bodySrcollLeft) {
|
|
455
|
+
return $xeTable.scrollTo(scrollLeft - offsetFixedLeft - 1)
|
|
456
|
+
}
|
|
457
|
+
return $xeTable.scrollTo(scrollLeft - offsetFixedLeft - offsetFixedRight + 1)
|
|
448
458
|
}
|
|
449
459
|
}
|
|
450
460
|
}
|
package/styles/theme/base.scss
CHANGED
|
@@ -68,6 +68,7 @@
|
|
|
68
68
|
--vxe-ui-table-cell-extend-area-border-color: var(--vxe-ui-table-cell-area-border-color);
|
|
69
69
|
--vxe-ui-table-cell-active-area-border-color: var(--vxe-ui-table-cell-area-border-color);
|
|
70
70
|
--vxe-ui-table-cell-area-background-color: rgba(64,158,255,0.2);
|
|
71
|
+
--vxe-ui-table-header-active-area-background-color: rgba(64,158,255,0.1);
|
|
71
72
|
|
|
72
73
|
--vxe-ui-table-expand-padding-default: 16px;
|
|
73
74
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|