vxe-table 3.4.2 → 3.4.3-beta.0
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/README.en.md +3 -3
- package/README.md +2 -2
- package/README.zh-TW.md +2 -2
- package/lib/edit/src/mixin.js +155 -59
- package/lib/edit/src/mixin.min.js +1 -1
- package/lib/header/src/header.js +1 -1
- package/lib/header/src/header.min.js +1 -1
- package/lib/index.umd.js +189 -84
- package/lib/index.umd.min.js +1 -1
- package/lib/table/src/body.js +10 -7
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/methods.js +19 -14
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +5 -3
- package/lib/table/src/table.min.js +1 -1
- package/package.json +2 -2
- package/packages/edit/src/mixin.js +97 -36
- package/packages/header/src/header.js +1 -1
- package/packages/table/src/body.js +8 -7
- package/packages/table/src/methods.js +16 -14
- package/packages/table/src/table.js +5 -3
- package/types/index.d.ts +1 -1
package/lib/table/src/body.js
CHANGED
|
@@ -212,7 +212,7 @@ function renderColumn(h, _vm, $xetable, $seq, seq, rowid, fixedType, rowLevel, r
|
|
|
212
212
|
} // 点击事件处理
|
|
213
213
|
|
|
214
214
|
|
|
215
|
-
if (highlightCurrentRow || tableListeners['cell-click'] || editRender && editConfig || expandOpts.trigger === 'row' || expandOpts.trigger === 'cell' || radioOpts.trigger === 'row' || column.type === 'radio' && radioOpts.trigger === 'cell' || checkboxOpts.trigger === 'row' || column.type === 'checkbox' && checkboxOpts.trigger === 'cell' || treeOpts.trigger === 'row' || column.treeNode && treeOpts.trigger === 'cell') {
|
|
215
|
+
if (rowOpts.isCurrent || highlightCurrentRow || tableListeners['cell-click'] || editRender && editConfig || expandOpts.trigger === 'row' || expandOpts.trigger === 'cell' || radioOpts.trigger === 'row' || column.type === 'radio' && radioOpts.trigger === 'cell' || checkboxOpts.trigger === 'row' || column.type === 'checkbox' && checkboxOpts.trigger === 'cell' || treeOpts.trigger === 'row' || column.treeNode && treeOpts.trigger === 'cell') {
|
|
216
216
|
tdOns.click = function (evnt) {
|
|
217
217
|
$xetable.triggerCellClickEvent(evnt, params);
|
|
218
218
|
};
|
|
@@ -350,7 +350,8 @@ function renderRows(h, _vm, $xetable, $seq, fixedType, tableData, tableColumn) {
|
|
|
350
350
|
checkboxOpts = $xetable.checkboxOpts,
|
|
351
351
|
expandColumn = $xetable.expandColumn,
|
|
352
352
|
hasFixedColumn = $xetable.hasFixedColumn,
|
|
353
|
-
fullAllDataRowIdData = $xetable.fullAllDataRowIdData
|
|
353
|
+
fullAllDataRowIdData = $xetable.fullAllDataRowIdData,
|
|
354
|
+
rowOpts = $xetable.rowOpts;
|
|
354
355
|
var rows = [];
|
|
355
356
|
tableData.forEach(function (row, $rowIndex) {
|
|
356
357
|
var trOn = {};
|
|
@@ -366,7 +367,7 @@ function renderRows(h, _vm, $xetable, $seq, fixedType, tableData, tableColumn) {
|
|
|
366
367
|
|
|
367
368
|
rowIndex = $xetable.getRowIndex(row); // 事件绑定
|
|
368
369
|
|
|
369
|
-
if (highlightHoverRow) {
|
|
370
|
+
if (rowOpts.isHover || highlightHoverRow) {
|
|
370
371
|
trOn.mouseenter = function (evnt) {
|
|
371
372
|
if (isOperateMouse($xetable)) {
|
|
372
373
|
return;
|
|
@@ -697,7 +698,8 @@ var _default = {
|
|
|
697
698
|
scrollXLoad = $xetable.scrollXLoad,
|
|
698
699
|
scrollYLoad = $xetable.scrollYLoad,
|
|
699
700
|
lastScrollTop = $xetable.lastScrollTop,
|
|
700
|
-
lastScrollLeft = $xetable.lastScrollLeft
|
|
701
|
+
lastScrollLeft = $xetable.lastScrollLeft,
|
|
702
|
+
rowOpts = $xetable.rowOpts;
|
|
701
703
|
var tableHeader = $refs.tableHeader,
|
|
702
704
|
tableBody = $refs.tableBody,
|
|
703
705
|
leftBody = $refs.leftBody,
|
|
@@ -721,7 +723,7 @@ var _default = {
|
|
|
721
723
|
$xetable.lastScrollLeft = scrollLeft;
|
|
722
724
|
$xetable.lastScrollTime = Date.now();
|
|
723
725
|
|
|
724
|
-
if (highlightHoverRow) {
|
|
726
|
+
if (rowOpts.isHover || highlightHoverRow) {
|
|
725
727
|
$xetable.clearHoverRow();
|
|
726
728
|
}
|
|
727
729
|
|
|
@@ -859,7 +861,8 @@ var _default = {
|
|
|
859
861
|
highlightHoverRow = $xetable.highlightHoverRow,
|
|
860
862
|
scrollYLoad = $xetable.scrollYLoad,
|
|
861
863
|
lastScrollTop = $xetable.lastScrollTop,
|
|
862
|
-
lastScrollLeft = $xetable.lastScrollLeft
|
|
864
|
+
lastScrollLeft = $xetable.lastScrollLeft,
|
|
865
|
+
rowOpts = $xetable.rowOpts;
|
|
863
866
|
var tableBody = $refs.tableBody;
|
|
864
867
|
var bodyElem = tableBody.$el;
|
|
865
868
|
var deltaTop = _dom.browse.firefox ? deltaY * 40 : deltaY;
|
|
@@ -881,7 +884,7 @@ var _default = {
|
|
|
881
884
|
$xetable.lastScrollLeft = scrollLeft;
|
|
882
885
|
$xetable.lastScrollTime = Date.now();
|
|
883
886
|
|
|
884
|
-
if (highlightHoverRow) {
|
|
887
|
+
if (rowOpts.isHover || highlightHoverRow) {
|
|
885
888
|
$xetable.clearHoverRow();
|
|
886
889
|
}
|
|
887
890
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_tools=require("../../tools"),_util=require("./util"),_dom=require("../../tools/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,l,t){return l in e?Object.defineProperty(e,l,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[l]=t,e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,l){if(e){if("string"==typeof e)return _arrayLikeToArray(e,l);var t=Object.prototype.toString.call(e).slice(8,-1);return"Map"===(t="Object"===t&&e.constructor?e.constructor.name:t)||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(e,l):void 0}}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,l){(null==l||l>e.length)&&(l=e.length);for(var t=0,o=new Array(l);t<l;t++)o[t]=e[t];return o}var scrollProcessTimeout,renderType="body";function isOperateMouse(e){return e._isResize||e.lastScrollTime&&Date.now()<e.lastScrollTime+e.delayHover}function renderLine(e,l,t,o,r,i){var n=i.column,a=t.treeOpts,s=t.treeConfig,c=n.slots,n=n.treeNode;return c&&c.line?t.callSlot(c.line,i,e):s&&n&&a.line?[e("div",{class:"vxe-tree--line-wrapper"},[e("div",{class:"vxe-tree--line",style:{height:"".concat((0,_util.calcTreeLine)(i,r),"px"),left:"".concat(o*a.indent+(o?2-(0,_util.getOffsetSize)(t):0)+16,"px")}})])]:[]}function renderColumn(e,l,t,o,r,i,n,a,s,c,d,u,p,f,h,y){var v,g=t.$listeners,m=t.afterFullData,x=t.tableData,w=t.height,b=t.columnKey,T=t.overflowX,_=t.sYOpts,S=t.scrollXLoad,O=t.scrollYLoad,$=t.highlightCurrentRow,C=t.showOverflow,L=t.isAllOverflow,I=t.align,k=t.currentColumn,E=t.cellClassName,R=t.cellStyle,Y=t.mergeList,A=t.spanMethod,H=t.radioOpts,P=t.checkboxOpts,B=t.expandOpts,D=t.treeOpts,M=t.tooltipOpts,U=t.mouseConfig,q=t.editConfig,W=t.editOpts,X=t.editRules,j=t.validOpts,N=t.editStore,z=t.validStore,F=t.tooltipConfig,V=t.rowOpts,K=p.type,G=p.cellRender,J=p.editRender,Q=p.align,Z=p.showOverflow,ee=p.className,le=p.treeNode,te=N.actived,oe=_.rHeight,re=V.height,ie=M.showAll||M.enabled,ne=t.getColumnIndex(p),N=t.getVTColumnIndex(p),_=(0,_tools.isEnableConf)(J),V=n?p.fixed!==n:p.fixed&&T,M=_xeUtils.default.isUndefined(Z)||_xeUtils.default.isNull(Z)?C:Z,T="ellipsis"===M,ae="title"===M,se=!0===M||"tooltip"===M,Z=ae||se||T,M={},Q=Q||I,I=z.row===s&&z.column===p,X=X&&j.showMessage&&("default"===j.message?w||1<x.length:"inline"===j.message),w={colid:p.id},ce=g["cell-mouseenter"],de=g["cell-mouseleave"],j=J&&q&&"dblclick"===W.trigger,ue={$table:t,$seq:o,seq:r,rowid:i,row:s,rowIndex:c,$rowIndex:d,_rowIndex:u,column:p,columnIndex:ne,$columnIndex:f,_columnIndex:N,fixed:n,type:renderType,isHidden:V,level:a,visibleData:m,data:x,items:y};if(!S&&!O||Z||(T=Z=!0),(ae||se||ie||ce||F)&&(M.mouseenter=function(e){isOperateMouse(t)||(ae?_tools.DomTools.updateCellTitle(e.currentTarget,p):(se||ie)&&t.triggerBodyTooltipEvent(e,ue),ce&&t.emitEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},ue),e))}),(se||ie||de||F)&&(M.mouseleave=function(e){isOperateMouse(t)||((se||ie)&&t.handleTargetLeaveEvent(e),de&&t.emitEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},ue),e))}),(P.range||U)&&(M.mousedown=function(e){t.triggerCellMousedownEvent(e,ue)}),($||g["cell-click"]||J&&q||"row"===B.trigger||"cell"===B.trigger||"row"===H.trigger||"radio"===p.type&&"cell"===H.trigger||"row"===P.trigger||"checkbox"===p.type&&"cell"===P.trigger||"row"===D.trigger||p.treeNode&&"cell"===D.trigger)&&(M.click=function(e){t.triggerCellClickEvent(e,ue)}),(j||g["cell-dblclick"])&&(M.dblclick=function(e){t.triggerCellDblclickEvent(e,ue)}),Y.length){u=(0,_util.mergeBodyMethod)(Y,u,N);if(u){var N=u.rowspan,pe=u.colspan;if(!N||!pe)return null;1<N&&(w.rowspan=N),1<pe&&(w.colspan=pe)}}else if(A){pe=A(ue)||{},A=pe.rowspan,A=void 0===A?1:A,pe=pe.colspan,pe=void 0===pe?1:pe;if(!A||!pe)return null;1<A&&(w.rowspan=A),1<pe&&(w.colspan=pe)}!(V=V&&Y&&(1<w.colspan||1<w.rowspan)?!1:V)&&q&&(J||G)&&(W.showStatus||W.showUpdateStatus)&&(v=t.isUpdateByRow(s,p.property));G=[];return V&&C&&L?G.push(e("div",{class:["vxe-cell",{"c--title":ae,"c--tooltip":se,"c--ellipsis":T}],style:{maxHeight:Z&&(oe||re)?"".concat(oe||re,"px"):""}})):(G.push.apply(G,_toConsumableArray(renderLine(e,l,t,a,y,ue)).concat([e("div",{class:["vxe-cell",{"c--title":ae,"c--tooltip":se,"c--ellipsis":T}],style:{maxHeight:Z&&(oe||re)?"".concat(oe||re,"px"):""},attrs:{title:ae?t.getCellLabel(s,p):null}},p.renderCell(e,ue))])),X&&I&&G.push(e("div",{class:"vxe-cell--valid",style:z.rule&&z.rule.maxWidth?{width:"".concat(z.rule.maxWidth,"px")}:null},[e("span",{class:"vxe-cell--valid-msg"},z.content)]))),e("td",{class:["vxe-body--column",p.id,(_defineProperty(e={},"col--".concat(Q),Q),_defineProperty(e,"col--".concat(K),K),_defineProperty(e,"col--last",f===h.length-1),_defineProperty(e,"col--tree-node",le),_defineProperty(e,"col--edit",_),_defineProperty(e,"col--ellipsis",Z),_defineProperty(e,"fixed--hidden",V),_defineProperty(e,"col--dirty",v),_defineProperty(e,"col--actived",q&&_&&te.row===s&&(te.column===p||"row"===W.mode)),_defineProperty(e,"col--valid-error",I),_defineProperty(e,"col--current",k===p),e),_tools.UtilTools.getClass(ee,ue),_tools.UtilTools.getClass(E,ue)],key:b?p.id:f,attrs:w,style:Object.assign({height:Z&&(oe||re)?"".concat(oe||re,"px"):""},R?_xeUtils.default.isFunction(R)?R(ue):R:null),on:M},G)}function renderRows(p,f,h,y,v,g,m){var x=h.stripe,w=h.rowKey,b=h.highlightHoverRow,T=h.rowClassName,_=h.rowStyle,S=h.editConfig,O=h.showOverflow,$=h.treeConfig,C=h.treeOpts,L=h.editOpts,I=h.treeExpandeds,k=h.scrollYLoad,E=h.scrollYStore,R=h.editStore,Y=h.rowExpandeds,A=h.radioOpts,H=h.checkboxOpts,P=h.expandColumn,B=h.hasFixedColumn,D=h.fullAllDataRowIdData,M=[];return g.forEach(function(t,o){var e={},r=o+1;k&&(r+=E.startIndex);var i=h.getVTRowIndex(t),n=h.getRowIndex(t);b&&(e.mouseenter=function(e){isOperateMouse(h)||h.triggerHoverEvent(e,{row:t,rowIndex:n})},e.mouseleave=function(){isOperateMouse(h)||h.clearHoverRow()});var l,a,s=_tools.UtilTools.getRowid(h,t),c=D[s],d=c?c.level:0,u={$table:h,$seq:y,seq:r,rowid:s,fixed:v,type:renderType,level:d,row:t,rowIndex:n,$rowIndex:o},c=!1;S&&(c=-1<R.insertList.indexOf(t)),M.push(p("tr",{class:["vxe-body--row",{"row--stripe":x&&(h.getVTRowIndex(t)+1)%2==0,"is--new":c,"row--new":c&&(L.showStatus||L.showInsertStatus),"row--radio":A.highlight&&h.selectRow===t,"row--checked":H.highlight&&h.isCheckedByCheckboxRow(t)},T?_xeUtils.default.isFunction(T)?T(u):T:""],attrs:{rowid:s},style:_?_xeUtils.default.isFunction(_)?_(u):_:null,key:w||$?s:o,on:e},m.map(function(e,l){return renderColumn(p,f,h,y,r,s,v,d,t,n,o,i,e,l,m,g)}))),P&&Y.length&&-1<Y.indexOf(t)&&($&&(l={paddingLeft:"".concat(d*C.indent+30,"px")}),a=P.showOverflow,u=_xeUtils.default.isUndefined(a)||_xeUtils.default.isNull(a)?O:a,a={$table:h,$seq:y,seq:r,column:P,fixed:v,type:renderType,level:d,row:t,rowIndex:n,$rowIndex:o},M.push(p("tr",{class:"vxe-body--expanded-row",key:"expand_".concat(s),style:_?_xeUtils.default.isFunction(_)?_(a):_:null,on:e},[p("td",{class:["vxe-body--expanded-column",{"fixed--hidden":v&&!B,"col--ellipsis":u}],attrs:{colspan:m.length}},[p("div",{class:"vxe-body--expanded-cell",style:l},[P.renderData(p,a)])])]))),!$||k||!I.length||(a=t[C.children])&&a.length&&-1<I.indexOf(t)&&M.push.apply(M,_toConsumableArray(renderRows(p,f,h,(y?"".concat(y,"."):"").concat(r),v,a,m)))}),M}function syncBodyScroll(e,l,t){(l||t)&&(l&&((0,_util.removeScrollListener)(l),l.scrollTop=e),t&&((0,_util.removeScrollListener)(t),t.scrollTop=e),clearTimeout(scrollProcessTimeout),scrollProcessTimeout=setTimeout(function(){(0,_util.restoreScrollListener)(l),(0,_util.restoreScrollListener)(t)},300))}var _default={name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,size:String,fixedType:String},data:function(){return{wheelTime:null,wheelYSize:0,wheelYInterval:0,wheelYTotal:0}},mounted:function(){var e=this.$parent,l=this.$el,t=this.$refs,o=this.fixedType,e=e.elemStore,o="".concat(o||"main","-body-");e["".concat(o,"wrapper")]=l,e["".concat(o,"table")]=t.table,e["".concat(o,"colgroup")]=t.colgroup,e["".concat(o,"list")]=t.tbody,e["".concat(o,"xSpace")]=t.xSpace,e["".concat(o,"ySpace")]=t.ySpace,e["".concat(o,"emptyBlock")]=t.emptyBlock,this.$el.onscroll=this.scrollEvent,this.$el._onscroll=this.scrollEvent},beforeDestroy:function(){clearTimeout(this.wheelTime),this.$el._onscroll=null,this.$el.onscroll=null},render:function(t){var e=this._e,l=this.$parent,o=this.fixedColumn,r=this.fixedType,i=l.$scopedSlots,n=l.tId,a=l.tableData,s=l.tableColumn,c=l.visibleColumn,d=l.showOverflow,u=l.keyboardConfig,p=l.keyboardOpts,f=l.mergeList,h=l.spanMethod,y=l.scrollXLoad,v=l.scrollYLoad,g=l.isAllOverflow,m=l.emptyOpts,x=l.mouseConfig,w=l.mouseOpts,b=l.sYOpts;return r&&(s=!(y||v||d&&g)||f.length||h||u&&p.isMerge?c:o),m=i.empty?i.empty.call(this,{$table:l},t):(i=(i=m.name?_vXETable.default.renderer.get(m.name):null)?i.renderEmpty:null)?i.call(this,t,m,{$table:l}):l.emptyText||_conf.default.i18n("vxe.table.emptyText"),t("div",{class:["vxe-table--body-wrapper",r?"fixed-".concat(r,"--wrapper"):"body--wrapper"],attrs:{xid:n},on:v&&"wheel"===b.mode?{wheel:this.wheelEvent}:{}},[r?e():t("div",{class:"vxe-body--x-space",ref:"xSpace"}),t("div",{class:"vxe-body--y-space",ref:"ySpace"}),t("table",{class:"vxe-table--body",attrs:{xid:n,cellspacing:0,cellpadding:0,border:0},ref:"table"},[t("colgroup",{ref:"colgroup"},s.map(function(e,l){return t("col",{attrs:{name:e.id},key:l})})),t("tbody",{ref:"tbody"},renderRows(t,this,l,"",r,a,s))]),t("div",{class:"vxe-table--checkbox-range"}),x&&w.area?t("div",{class:"vxe-table--cell-area"},[t("span",{class:"vxe-table--cell-main-area"},w.extension?[t("span",{class:"vxe-table--cell-main-area-btn",on:{mousedown:function(e){l.triggerCellExtendMousedownEvent(e,{$table:l,fixed:r,type:renderType})}}})]:null),t("span",{class:"vxe-table--cell-copy-area"}),t("span",{class:"vxe-table--cell-extend-area"}),t("span",{class:"vxe-table--cell-multi-area"}),t("span",{class:"vxe-table--cell-active-area"})]):null,r?null:t("div",{class:"vxe-table--empty-block",ref:"emptyBlock"},[t("div",{class:"vxe-table--empty-content"},m)])])},methods:{scrollEvent:function(e){var l=this.$el,t=this.$parent,o=this.fixedType,r=t.$refs,i=t.elemStore,n=t.highlightHoverRow,a=t.scrollXLoad,s=t.scrollYLoad,c=t.lastScrollTop,d=t.lastScrollLeft,u=r.tableHeader,p=r.tableBody,f=r.leftBody,h=r.rightBody,y=r.tableFooter,v=r.validTip,g=u?u.$el:null,r=y?y.$el:null,u=p.$el,y=f?f.$el:null,p=h?h.$el:null,f=i["main-body-ySpace"],h=i["main-body-xSpace"],i=f?f.clientHeight:0,f=h?h.clientWidth:0,h=l.scrollTop,l=u.scrollLeft,d=l!==d,c=h!==c;t.lastScrollTop=h,t.lastScrollLeft=l,t.lastScrollTime=Date.now(),n&&t.clearHoverRow(),y&&"left"===o?syncBodyScroll(h=y.scrollTop,u,p):p&&"right"===o?syncBodyScroll(h=p.scrollTop,u,y):(d&&(g&&(g.scrollLeft=u.scrollLeft),r&&(r.scrollLeft=u.scrollLeft)),(y||p)&&(t.checkScrolling(),c&&syncBodyScroll(h,y,p))),a&&d&&t.triggerScrollXEvent(e),s&&c&&t.triggerScrollYEvent(e),d&&v&&v.visible&&v.updatePlacement(),t.emitEvent("scroll",{type:renderType,fixed:o,scrollTop:h,scrollLeft:l,bodyHeight:i,bodyWidth:f,isX:d,isY:c},e)},handleWheel:function(a,s,e,c,d){var u=this,p=this.$parent,l=p.$refs,t=p.elemStore,o=l.tableBody,r=l.leftBody,l=l.rightBody,f=o.$el,h=r?r.$el:null,y=l?l.$el:null,r=this.isPrevWheelTop===s?Math.max(0,this.wheelYSize-this.wheelYTotal):0,l=t["main-body-ySpace"],t=t["main-body-xSpace"],v=l?l.clientHeight:0,g=t?t.clientWidth:0;this.isPrevWheelTop=s,this.wheelYSize=Math.abs(s?e-r:e+r),this.wheelYInterval=0,this.wheelYTotal=0,clearTimeout(this.wheelTime),function e(){var l,t,o=u.fixedType,r=u.wheelYTotal,i=u.wheelYSize,n=u.wheelYInterval;r<i&&(i<(r+=n=Math.max(5,Math.floor(1.5*n)))&&(n-=r-i),t=f.scrollTop,l=f.clientHeight,i=f.scrollHeight,f.scrollTop=t=t+n*(s?-1:1),h&&(h.scrollTop=t),y&&(y.scrollTop=t),(s?t<i-l:0<=t)&&(u.wheelTime=setTimeout(e,10)),u.wheelYTotal=r,u.wheelYInterval=n,p.emitEvent("scroll",{type:renderType,fixed:o,scrollTop:f.scrollTop,scrollLeft:f.scrollLeft,bodyHeight:v,bodyWidth:g,isX:c,isY:d},a))}()},wheelEvent:function(e){var l=e.deltaY,t=e.deltaX,o=this.$el,r=this.$parent,i=r.$refs,n=r.highlightHoverRow,a=r.scrollYLoad,s=r.lastScrollTop,c=r.lastScrollLeft,d=i.tableBody.$el,i=_dom.browse.firefox?40*l:l,l=_dom.browse.firefox?40*t:t,t=i<0;(t?o.scrollTop<=0:o.scrollTop>=o.scrollHeight-o.clientHeight)||(o=o.scrollTop+i,c=(l=d.scrollLeft+l)!==c,(s=o!==s)&&(e.preventDefault(),r.lastScrollTop=o,r.lastScrollLeft=l,r.lastScrollTime=Date.now(),n&&r.clearHoverRow(),this.handleWheel(e,t,i,c,s),a&&r.triggerScrollYEvent(e)))}}};exports.default=_default;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_tools=require("../../tools"),_util=require("./util"),_dom=require("../../tools/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,l,t){return l in e?Object.defineProperty(e,l,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[l]=t,e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,l){if(e){if("string"==typeof e)return _arrayLikeToArray(e,l);var t=Object.prototype.toString.call(e).slice(8,-1);return"Map"===(t="Object"===t&&e.constructor?e.constructor.name:t)||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(e,l):void 0}}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,l){(null==l||l>e.length)&&(l=e.length);for(var t=0,o=new Array(l);t<l;t++)o[t]=e[t];return o}var scrollProcessTimeout,renderType="body";function isOperateMouse(e){return e._isResize||e.lastScrollTime&&Date.now()<e.lastScrollTime+e.delayHover}function renderLine(e,l,t,o,r,i){var n=i.column,s=t.treeOpts,a=t.treeConfig,c=n.slots,n=n.treeNode;return c&&c.line?t.callSlot(c.line,i,e):a&&n&&s.line?[e("div",{class:"vxe-tree--line-wrapper"},[e("div",{class:"vxe-tree--line",style:{height:"".concat((0,_util.calcTreeLine)(i,r),"px"),left:"".concat(o*s.indent+(o?2-(0,_util.getOffsetSize)(t):0)+16,"px")}})])]:[]}function renderColumn(e,l,t,o,r,i,n,s,a,c,d,u,p,f,h,y){var v,g=t.$listeners,m=t.afterFullData,x=t.tableData,w=t.height,b=t.columnKey,T=t.overflowX,_=t.sYOpts,S=t.scrollXLoad,O=t.scrollYLoad,C=t.highlightCurrentRow,$=t.showOverflow,L=t.isAllOverflow,I=t.align,k=t.currentColumn,E=t.cellClassName,H=t.cellStyle,R=t.mergeList,Y=t.spanMethod,A=t.radioOpts,P=t.checkboxOpts,B=t.expandOpts,D=t.treeOpts,M=t.tooltipOpts,U=t.mouseConfig,q=t.editConfig,W=t.editOpts,X=t.editRules,j=t.validOpts,N=t.editStore,z=t.validStore,F=t.tooltipConfig,V=t.rowOpts,K=p.type,G=p.cellRender,J=p.editRender,Q=p.align,Z=p.showOverflow,ee=p.className,le=p.treeNode,te=N.actived,oe=_.rHeight,re=V.height,ie=M.showAll||M.enabled,ne=t.getColumnIndex(p),se=t.getVTColumnIndex(p),N=(0,_tools.isEnableConf)(J),_=n?p.fixed!==n:p.fixed&&T,M=_xeUtils.default.isUndefined(Z)||_xeUtils.default.isNull(Z)?$:Z,T="ellipsis"===M,ae="title"===M,ce=!0===M||"tooltip"===M,Z=ae||ce||T,M={},Q=Q||I,I=z.row===a&&z.column===p,X=X&&j.showMessage&&("default"===j.message?w||1<x.length:"inline"===j.message),w={colid:p.id},de=g["cell-mouseenter"],ue=g["cell-mouseleave"],j=J&&q&&"dblclick"===W.trigger,pe={$table:t,$seq:o,seq:r,rowid:i,row:a,rowIndex:c,$rowIndex:d,_rowIndex:u,column:p,columnIndex:ne,$columnIndex:f,_columnIndex:se,fixed:n,type:renderType,isHidden:_,level:s,visibleData:m,data:x,items:y};if(!S&&!O||Z||(T=Z=!0),(ae||ce||ie||de||F)&&(M.mouseenter=function(e){isOperateMouse(t)||(ae?_tools.DomTools.updateCellTitle(e.currentTarget,p):(ce||ie)&&t.triggerBodyTooltipEvent(e,pe),de&&t.emitEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},pe),e))}),(ce||ie||ue||F)&&(M.mouseleave=function(e){isOperateMouse(t)||((ce||ie)&&t.handleTargetLeaveEvent(e),ue&&t.emitEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},pe),e))}),(P.range||U)&&(M.mousedown=function(e){t.triggerCellMousedownEvent(e,pe)}),(V.isCurrent||C||g["cell-click"]||J&&q||"row"===B.trigger||"cell"===B.trigger||"row"===A.trigger||"radio"===p.type&&"cell"===A.trigger||"row"===P.trigger||"checkbox"===p.type&&"cell"===P.trigger||"row"===D.trigger||p.treeNode&&"cell"===D.trigger)&&(M.click=function(e){t.triggerCellClickEvent(e,pe)}),(j||g["cell-dblclick"])&&(M.dblclick=function(e){t.triggerCellDblclickEvent(e,pe)}),R.length){u=(0,_util.mergeBodyMethod)(R,u,se);if(u){var se=u.rowspan,fe=u.colspan;if(!se||!fe)return null;1<se&&(w.rowspan=se),1<fe&&(w.colspan=fe)}}else if(Y){fe=Y(pe)||{},Y=fe.rowspan,Y=void 0===Y?1:Y,fe=fe.colspan,fe=void 0===fe?1:fe;if(!Y||!fe)return null;1<Y&&(w.rowspan=Y),1<fe&&(w.colspan=fe)}!(_=_&&R&&(1<w.colspan||1<w.rowspan)?!1:_)&&q&&(J||G)&&(W.showStatus||W.showUpdateStatus)&&(v=t.isUpdateByRow(a,p.property));G=[];return _&&$&&L?G.push(e("div",{class:["vxe-cell",{"c--title":ae,"c--tooltip":ce,"c--ellipsis":T}],style:{maxHeight:Z&&(oe||re)?"".concat(oe||re,"px"):""}})):(G.push.apply(G,_toConsumableArray(renderLine(e,l,t,s,y,pe)).concat([e("div",{class:["vxe-cell",{"c--title":ae,"c--tooltip":ce,"c--ellipsis":T}],style:{maxHeight:Z&&(oe||re)?"".concat(oe||re,"px"):""},attrs:{title:ae?t.getCellLabel(a,p):null}},p.renderCell(e,pe))])),X&&I&&G.push(e("div",{class:"vxe-cell--valid",style:z.rule&&z.rule.maxWidth?{width:"".concat(z.rule.maxWidth,"px")}:null},[e("span",{class:"vxe-cell--valid-msg"},z.content)]))),e("td",{class:["vxe-body--column",p.id,(_defineProperty(e={},"col--".concat(Q),Q),_defineProperty(e,"col--".concat(K),K),_defineProperty(e,"col--last",f===h.length-1),_defineProperty(e,"col--tree-node",le),_defineProperty(e,"col--edit",N),_defineProperty(e,"col--ellipsis",Z),_defineProperty(e,"fixed--hidden",_),_defineProperty(e,"col--dirty",v),_defineProperty(e,"col--actived",q&&N&&te.row===a&&(te.column===p||"row"===W.mode)),_defineProperty(e,"col--valid-error",I),_defineProperty(e,"col--current",k===p),e),_tools.UtilTools.getClass(ee,pe),_tools.UtilTools.getClass(E,pe)],key:b?p.id:f,attrs:w,style:Object.assign({height:Z&&(oe||re)?"".concat(oe||re,"px"):""},H?_xeUtils.default.isFunction(H)?H(pe):H:null),on:M},G)}function renderRows(p,f,h,y,v,g,m){var x=h.stripe,w=h.rowKey,b=h.highlightHoverRow,T=h.rowClassName,_=h.rowStyle,S=h.editConfig,O=h.showOverflow,C=h.treeConfig,$=h.treeOpts,L=h.editOpts,I=h.treeExpandeds,k=h.scrollYLoad,E=h.scrollYStore,H=h.editStore,R=h.rowExpandeds,Y=h.radioOpts,A=h.checkboxOpts,P=h.expandColumn,B=h.hasFixedColumn,D=h.fullAllDataRowIdData,M=h.rowOpts,U=[];return g.forEach(function(t,o){var e={},r=o+1;k&&(r+=E.startIndex);var i=h.getVTRowIndex(t),n=h.getRowIndex(t);(M.isHover||b)&&(e.mouseenter=function(e){isOperateMouse(h)||h.triggerHoverEvent(e,{row:t,rowIndex:n})},e.mouseleave=function(){isOperateMouse(h)||h.clearHoverRow()});var l,s,a=_tools.UtilTools.getRowid(h,t),c=D[a],d=c?c.level:0,u={$table:h,$seq:y,seq:r,rowid:a,fixed:v,type:renderType,level:d,row:t,rowIndex:n,$rowIndex:o},c=!1;S&&(c=-1<H.insertList.indexOf(t)),U.push(p("tr",{class:["vxe-body--row",{"row--stripe":x&&(h.getVTRowIndex(t)+1)%2==0,"is--new":c,"row--new":c&&(L.showStatus||L.showInsertStatus),"row--radio":Y.highlight&&h.selectRow===t,"row--checked":A.highlight&&h.isCheckedByCheckboxRow(t)},T?_xeUtils.default.isFunction(T)?T(u):T:""],attrs:{rowid:a},style:_?_xeUtils.default.isFunction(_)?_(u):_:null,key:w||C?a:o,on:e},m.map(function(e,l){return renderColumn(p,f,h,y,r,a,v,d,t,n,o,i,e,l,m,g)}))),P&&R.length&&-1<R.indexOf(t)&&(C&&(l={paddingLeft:"".concat(d*$.indent+30,"px")}),s=P.showOverflow,u=_xeUtils.default.isUndefined(s)||_xeUtils.default.isNull(s)?O:s,s={$table:h,$seq:y,seq:r,column:P,fixed:v,type:renderType,level:d,row:t,rowIndex:n,$rowIndex:o},U.push(p("tr",{class:"vxe-body--expanded-row",key:"expand_".concat(a),style:_?_xeUtils.default.isFunction(_)?_(s):_:null,on:e},[p("td",{class:["vxe-body--expanded-column",{"fixed--hidden":v&&!B,"col--ellipsis":u}],attrs:{colspan:m.length}},[p("div",{class:"vxe-body--expanded-cell",style:l},[P.renderData(p,s)])])]))),!C||k||!I.length||(s=t[$.children])&&s.length&&-1<I.indexOf(t)&&U.push.apply(U,_toConsumableArray(renderRows(p,f,h,(y?"".concat(y,"."):"").concat(r),v,s,m)))}),U}function syncBodyScroll(e,l,t){(l||t)&&(l&&((0,_util.removeScrollListener)(l),l.scrollTop=e),t&&((0,_util.removeScrollListener)(t),t.scrollTop=e),clearTimeout(scrollProcessTimeout),scrollProcessTimeout=setTimeout(function(){(0,_util.restoreScrollListener)(l),(0,_util.restoreScrollListener)(t)},300))}var _default={name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,size:String,fixedType:String},data:function(){return{wheelTime:null,wheelYSize:0,wheelYInterval:0,wheelYTotal:0}},mounted:function(){var e=this.$parent,l=this.$el,t=this.$refs,o=this.fixedType,e=e.elemStore,o="".concat(o||"main","-body-");e["".concat(o,"wrapper")]=l,e["".concat(o,"table")]=t.table,e["".concat(o,"colgroup")]=t.colgroup,e["".concat(o,"list")]=t.tbody,e["".concat(o,"xSpace")]=t.xSpace,e["".concat(o,"ySpace")]=t.ySpace,e["".concat(o,"emptyBlock")]=t.emptyBlock,this.$el.onscroll=this.scrollEvent,this.$el._onscroll=this.scrollEvent},beforeDestroy:function(){clearTimeout(this.wheelTime),this.$el._onscroll=null,this.$el.onscroll=null},render:function(t){var e=this._e,l=this.$parent,o=this.fixedColumn,r=this.fixedType,i=l.$scopedSlots,n=l.tId,s=l.tableData,a=l.tableColumn,c=l.visibleColumn,d=l.showOverflow,u=l.keyboardConfig,p=l.keyboardOpts,f=l.mergeList,h=l.spanMethod,y=l.scrollXLoad,v=l.scrollYLoad,g=l.isAllOverflow,m=l.emptyOpts,x=l.mouseConfig,w=l.mouseOpts,b=l.sYOpts;return r&&(a=!(y||v||d&&g)||f.length||h||u&&p.isMerge?c:o),m=i.empty?i.empty.call(this,{$table:l},t):(i=(i=m.name?_vXETable.default.renderer.get(m.name):null)?i.renderEmpty:null)?i.call(this,t,m,{$table:l}):l.emptyText||_conf.default.i18n("vxe.table.emptyText"),t("div",{class:["vxe-table--body-wrapper",r?"fixed-".concat(r,"--wrapper"):"body--wrapper"],attrs:{xid:n},on:v&&"wheel"===b.mode?{wheel:this.wheelEvent}:{}},[r?e():t("div",{class:"vxe-body--x-space",ref:"xSpace"}),t("div",{class:"vxe-body--y-space",ref:"ySpace"}),t("table",{class:"vxe-table--body",attrs:{xid:n,cellspacing:0,cellpadding:0,border:0},ref:"table"},[t("colgroup",{ref:"colgroup"},a.map(function(e,l){return t("col",{attrs:{name:e.id},key:l})})),t("tbody",{ref:"tbody"},renderRows(t,this,l,"",r,s,a))]),t("div",{class:"vxe-table--checkbox-range"}),x&&w.area?t("div",{class:"vxe-table--cell-area"},[t("span",{class:"vxe-table--cell-main-area"},w.extension?[t("span",{class:"vxe-table--cell-main-area-btn",on:{mousedown:function(e){l.triggerCellExtendMousedownEvent(e,{$table:l,fixed:r,type:renderType})}}})]:null),t("span",{class:"vxe-table--cell-copy-area"}),t("span",{class:"vxe-table--cell-extend-area"}),t("span",{class:"vxe-table--cell-multi-area"}),t("span",{class:"vxe-table--cell-active-area"})]):null,r?null:t("div",{class:"vxe-table--empty-block",ref:"emptyBlock"},[t("div",{class:"vxe-table--empty-content"},m)])])},methods:{scrollEvent:function(e){var l=this.$el,t=this.$parent,o=this.fixedType,r=t.$refs,i=t.elemStore,n=t.highlightHoverRow,s=t.scrollXLoad,a=t.scrollYLoad,c=t.lastScrollTop,d=t.lastScrollLeft,u=t.rowOpts,p=r.tableHeader,f=r.tableBody,h=r.leftBody,y=r.rightBody,v=r.tableFooter,g=r.validTip,m=p?p.$el:null,r=v?v.$el:null,p=f.$el,v=h?h.$el:null,f=y?y.$el:null,h=i["main-body-ySpace"],y=i["main-body-xSpace"],i=h?h.clientHeight:0,h=y?y.clientWidth:0,y=l.scrollTop,l=p.scrollLeft,d=l!==d,c=y!==c;t.lastScrollTop=y,t.lastScrollLeft=l,t.lastScrollTime=Date.now(),(u.isHover||n)&&t.clearHoverRow(),v&&"left"===o?syncBodyScroll(y=v.scrollTop,p,f):f&&"right"===o?syncBodyScroll(y=f.scrollTop,p,v):(d&&(m&&(m.scrollLeft=p.scrollLeft),r&&(r.scrollLeft=p.scrollLeft)),(v||f)&&(t.checkScrolling(),c&&syncBodyScroll(y,v,f))),s&&d&&t.triggerScrollXEvent(e),a&&c&&t.triggerScrollYEvent(e),d&&g&&g.visible&&g.updatePlacement(),t.emitEvent("scroll",{type:renderType,fixed:o,scrollTop:y,scrollLeft:l,bodyHeight:i,bodyWidth:h,isX:d,isY:c},e)},handleWheel:function(s,a,e,c,d){var u=this,p=this.$parent,l=p.$refs,t=p.elemStore,o=l.tableBody,r=l.leftBody,l=l.rightBody,f=o.$el,h=r?r.$el:null,y=l?l.$el:null,r=this.isPrevWheelTop===a?Math.max(0,this.wheelYSize-this.wheelYTotal):0,l=t["main-body-ySpace"],t=t["main-body-xSpace"],v=l?l.clientHeight:0,g=t?t.clientWidth:0;this.isPrevWheelTop=a,this.wheelYSize=Math.abs(a?e-r:e+r),this.wheelYInterval=0,this.wheelYTotal=0,clearTimeout(this.wheelTime),function e(){var l,t,o=u.fixedType,r=u.wheelYTotal,i=u.wheelYSize,n=u.wheelYInterval;r<i&&(i<(r+=n=Math.max(5,Math.floor(1.5*n)))&&(n-=r-i),t=f.scrollTop,l=f.clientHeight,i=f.scrollHeight,f.scrollTop=t=t+n*(a?-1:1),h&&(h.scrollTop=t),y&&(y.scrollTop=t),(a?t<i-l:0<=t)&&(u.wheelTime=setTimeout(e,10)),u.wheelYTotal=r,u.wheelYInterval=n,p.emitEvent("scroll",{type:renderType,fixed:o,scrollTop:f.scrollTop,scrollLeft:f.scrollLeft,bodyHeight:v,bodyWidth:g,isX:c,isY:d},s))}()},wheelEvent:function(e){var l=e.deltaY,t=e.deltaX,o=this.$el,r=this.$parent,i=r.$refs,n=r.highlightHoverRow,s=r.scrollYLoad,a=r.lastScrollTop,c=r.lastScrollLeft,d=r.rowOpts,u=i.tableBody.$el,i=_dom.browse.firefox?40*l:l,l=_dom.browse.firefox?40*t:t,t=i<0;(t?o.scrollTop<=0:o.scrollTop>=o.scrollHeight-o.clientHeight)||(o=o.scrollTop+i,c=(l=u.scrollLeft+l)!==c,(a=o!==a)&&(e.preventDefault(),r.lastScrollTop=o,r.lastScrollLeft=l,r.lastScrollTime=Date.now(),(d.isHover||n)&&r.clearHoverRow(),this.handleWheel(e,t,i,c,a),s&&r.triggerScrollYEvent(e)))}}};exports.default=_default;
|
package/lib/table/src/methods.js
CHANGED
|
@@ -2918,7 +2918,8 @@ var Methods = {
|
|
|
2918
2918
|
treeOpts = _this24.treeOpts,
|
|
2919
2919
|
highlightCurrentRow = _this24.highlightCurrentRow,
|
|
2920
2920
|
currentRow = _this24.currentRow,
|
|
2921
|
-
bodyCtxMenu = _this24.bodyCtxMenu
|
|
2921
|
+
bodyCtxMenu = _this24.bodyCtxMenu,
|
|
2922
|
+
rowOpts = _this24.rowOpts;
|
|
2922
2923
|
var selected = editStore.selected,
|
|
2923
2924
|
actived = editStore.actived;
|
|
2924
2925
|
var keyCode = evnt.keyCode;
|
|
@@ -2988,7 +2989,7 @@ var Methods = {
|
|
|
2988
2989
|
_this24.keyCtxTimeout = setTimeout(function () {
|
|
2989
2990
|
_this24._keyCtx = false;
|
|
2990
2991
|
}, 1000);
|
|
2991
|
-
} else if (isEnter && !hasAltKey && keyboardConfig && keyboardOpts.isEnter && (selected.row || actived.row || treeConfig && highlightCurrentRow && currentRow)) {
|
|
2992
|
+
} else if (isEnter && !hasAltKey && keyboardConfig && keyboardOpts.isEnter && (selected.row || actived.row || treeConfig && (rowOpts.isCurrent || highlightCurrentRow) && currentRow)) {
|
|
2992
2993
|
// 退出选中
|
|
2993
2994
|
if (hasCtrlKey) {
|
|
2994
2995
|
// 如果是激活编辑状态,则取消编辑
|
|
@@ -3022,7 +3023,7 @@ var Methods = {
|
|
|
3022
3023
|
_this24.moveSelected(targetArgs, isLeftArrow, false, isRightArrow, true, evnt);
|
|
3023
3024
|
}
|
|
3024
3025
|
}
|
|
3025
|
-
} else if (treeConfig && highlightCurrentRow && currentRow) {
|
|
3026
|
+
} else if (treeConfig && (rowOpts.isCurrent || highlightCurrentRow) && currentRow) {
|
|
3026
3027
|
// 如果是树形表格当前行回车移动到子节点
|
|
3027
3028
|
var childrens = currentRow[treeOpts.children];
|
|
3028
3029
|
|
|
@@ -3047,7 +3048,7 @@ var Methods = {
|
|
|
3047
3048
|
// 如果按下了方向键
|
|
3048
3049
|
if (selected.row && selected.column) {
|
|
3049
3050
|
_this24.moveSelected(selected.args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow, evnt);
|
|
3050
|
-
} else if ((isUpArrow || isDwArrow) && highlightCurrentRow) {
|
|
3051
|
+
} else if ((isUpArrow || isDwArrow) && (rowOpts.isCurrent || highlightCurrentRow)) {
|
|
3051
3052
|
// 当前行按键上下移动
|
|
3052
3053
|
_this24.moveCurrentRow(isUpArrow, isDwArrow, evnt);
|
|
3053
3054
|
}
|
|
@@ -3059,7 +3060,7 @@ var Methods = {
|
|
|
3059
3060
|
} else if (actived.row || actived.column) {
|
|
3060
3061
|
_this24.moveTabSelected(actived.args, hasShiftKey, evnt);
|
|
3061
3062
|
}
|
|
3062
|
-
} else if (keyboardConfig && (isDel || (treeConfig && highlightCurrentRow && currentRow ? isBack && keyboardOpts.isArrow : isBack))) {
|
|
3063
|
+
} else if (keyboardConfig && (isDel || (treeConfig && (rowOpts.isCurrent || highlightCurrentRow) && currentRow ? isBack && keyboardOpts.isArrow : isBack))) {
|
|
3063
3064
|
if (!isEditStatus) {
|
|
3064
3065
|
var delMethod = keyboardOpts.delMethod,
|
|
3065
3066
|
backMethod = keyboardOpts.backMethod; // 如果是删除键
|
|
@@ -3093,7 +3094,7 @@ var Methods = {
|
|
|
3093
3094
|
// 如果按下 del 键,更新表尾数据
|
|
3094
3095
|
_this24.updateFooter();
|
|
3095
3096
|
}
|
|
3096
|
-
} else if (isBack && keyboardOpts.isArrow && treeConfig && highlightCurrentRow && currentRow) {
|
|
3097
|
+
} else if (isBack && keyboardOpts.isArrow && treeConfig && (rowOpts.isCurrent || highlightCurrentRow) && currentRow) {
|
|
3097
3098
|
// 如果树形表格回退键关闭当前行返回父节点
|
|
3098
3099
|
var _XEUtils$findTree = _xeUtils.default.findTree(_this24.afterFullData, function (item) {
|
|
3099
3100
|
return item === currentRow;
|
|
@@ -4209,12 +4210,13 @@ var Methods = {
|
|
|
4209
4210
|
* @param {Row} row 行对象
|
|
4210
4211
|
*/
|
|
4211
4212
|
setCurrentRow: function setCurrentRow(row) {
|
|
4212
|
-
var $el = this.$el
|
|
4213
|
+
var $el = this.$el,
|
|
4214
|
+
rowOpts = this.rowOpts;
|
|
4213
4215
|
this.clearCurrentRow();
|
|
4214
4216
|
this.clearCurrentColumn();
|
|
4215
4217
|
this.currentRow = row;
|
|
4216
4218
|
|
|
4217
|
-
if (this.highlightCurrentRow) {
|
|
4219
|
+
if (rowOpts.isCurrent || this.highlightCurrentRow) {
|
|
4218
4220
|
if ($el) {
|
|
4219
4221
|
_xeUtils.default.arrayEach($el.querySelectorAll("[rowid=\"".concat(getRowid(this, row), "\"]")), function (elem) {
|
|
4220
4222
|
return addClass(elem, 'row--current');
|
|
@@ -4275,7 +4277,7 @@ var Methods = {
|
|
|
4275
4277
|
* 用于当前行,获取当前行的数据
|
|
4276
4278
|
*/
|
|
4277
4279
|
getCurrentRecord: function getCurrentRecord() {
|
|
4278
|
-
return this.highlightCurrentRow ? this.currentRow : null;
|
|
4280
|
+
return this.rowOpts.isCurrent || this.highlightCurrentRow ? this.currentRow : null;
|
|
4279
4281
|
},
|
|
4280
4282
|
|
|
4281
4283
|
/**
|
|
@@ -4370,7 +4372,7 @@ var Methods = {
|
|
|
4370
4372
|
cell: cell
|
|
4371
4373
|
}, params), evnt);
|
|
4372
4374
|
|
|
4373
|
-
if (this.highlightCurrentColumn) {
|
|
4375
|
+
if (this.columnOpts.isCurrent || this.highlightCurrentColumn) {
|
|
4374
4376
|
return this.setCurrentColumn(column);
|
|
4375
4377
|
}
|
|
4376
4378
|
|
|
@@ -4382,7 +4384,7 @@ var Methods = {
|
|
|
4382
4384
|
}, params), evnt);
|
|
4383
4385
|
},
|
|
4384
4386
|
getCurrentColumn: function getCurrentColumn() {
|
|
4385
|
-
return this.highlightCurrentColumn ? this.currentColumn : null;
|
|
4387
|
+
return this.columnOpts.isCurrent || this.highlightCurrentColumn ? this.currentColumn : null;
|
|
4386
4388
|
},
|
|
4387
4389
|
|
|
4388
4390
|
/**
|
|
@@ -4447,7 +4449,8 @@ var Methods = {
|
|
|
4447
4449
|
treeOpts = this.treeOpts,
|
|
4448
4450
|
editConfig = this.editConfig,
|
|
4449
4451
|
editOpts = this.editOpts,
|
|
4450
|
-
checkboxOpts = this.checkboxOpts
|
|
4452
|
+
checkboxOpts = this.checkboxOpts,
|
|
4453
|
+
rowOpts = this.rowOpts;
|
|
4451
4454
|
var actived = editStore.actived;
|
|
4452
4455
|
var _params = params,
|
|
4453
4456
|
row = _params.row,
|
|
@@ -4486,7 +4489,7 @@ var Methods = {
|
|
|
4486
4489
|
if (!triggerTreeNode) {
|
|
4487
4490
|
if (!triggerExpandNode) {
|
|
4488
4491
|
// 如果是高亮行
|
|
4489
|
-
if (highlightCurrentRow) {
|
|
4492
|
+
if (rowOpts.isCurrent || highlightCurrentRow) {
|
|
4490
4493
|
if (!triggerCheckbox && !triggerRadio) {
|
|
4491
4494
|
this.triggerCurrentRowEvent(evnt, params);
|
|
4492
4495
|
}
|
|
@@ -5356,9 +5359,11 @@ var Methods = {
|
|
|
5356
5359
|
treeOpts = this.treeOpts,
|
|
5357
5360
|
treeFullData = this.treeFullData;
|
|
5358
5361
|
var fullData = [];
|
|
5362
|
+
var expandMaps = new Map();
|
|
5359
5363
|
|
|
5360
5364
|
_xeUtils.default.eachTree(treeFullData, function (row, index, items, path, parent) {
|
|
5361
|
-
if (!parent || treeExpandeds.indexOf(parent) > -1) {
|
|
5365
|
+
if (!parent || expandMaps.has(parent) && treeExpandeds.indexOf(parent) > -1) {
|
|
5366
|
+
expandMaps.set(row, 1);
|
|
5362
5367
|
fullData.push(row);
|
|
5363
5368
|
}
|
|
5364
5369
|
}, treeOpts);
|