vxe-table 3.3.13-beta.0 → 3.3.14

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.
@@ -687,6 +687,7 @@ var _default = {
687
687
  $xetable = this.$parent,
688
688
  fixedType = this.fixedType;
689
689
  var $refs = $xetable.$refs,
690
+ elemStore = $xetable.elemStore,
690
691
  highlightHoverRow = $xetable.highlightHoverRow,
691
692
  scrollXLoad = $xetable.scrollXLoad,
692
693
  scrollYLoad = $xetable.scrollYLoad,
@@ -703,6 +704,10 @@ var _default = {
703
704
  var bodyElem = tableBody.$el;
704
705
  var leftElem = leftBody ? leftBody.$el : null;
705
706
  var rightElem = rightBody ? rightBody.$el : null;
707
+ var bodyYElem = elemStore['main-body-ySpace'];
708
+ var bodyXElem = elemStore['main-body-xSpace'];
709
+ var bodyHeight = bodyYElem ? bodyYElem.clientHeight : 0;
710
+ var bodyWidth = bodyXElem ? bodyXElem.clientWidth : 0;
706
711
  var scrollTop = scrollBodyElem.scrollTop;
707
712
  var scrollLeft = bodyElem.scrollLeft;
708
713
  var isRollX = scrollLeft !== lastScrollLeft;
@@ -758,6 +763,8 @@ var _default = {
758
763
  fixed: fixedType,
759
764
  scrollTop: scrollTop,
760
765
  scrollLeft: scrollLeft,
766
+ bodyHeight: bodyHeight,
767
+ bodyWidth: bodyWidth,
761
768
  isX: isRollX,
762
769
  isY: isRollY
763
770
  }, evnt);
@@ -766,7 +773,8 @@ var _default = {
766
773
  var _this = this;
767
774
 
768
775
  var $xetable = this.$parent;
769
- var $refs = $xetable.$refs;
776
+ var $refs = $xetable.$refs,
777
+ elemStore = $xetable.elemStore;
770
778
  var tableBody = $refs.tableBody,
771
779
  leftBody = $refs.leftBody,
772
780
  rightBody = $refs.rightBody;
@@ -774,6 +782,10 @@ var _default = {
774
782
  var leftElem = leftBody ? leftBody.$el : null;
775
783
  var rightElem = rightBody ? rightBody.$el : null;
776
784
  var remainSize = this.isPrevWheelTop === isTopWheel ? Math.max(0, this.wheelYSize - this.wheelYTotal) : 0;
785
+ var bodyYElem = elemStore['main-body-ySpace'];
786
+ var bodyXElem = elemStore['main-body-xSpace'];
787
+ var bodyHeight = bodyYElem ? bodyYElem.clientHeight : 0;
788
+ var bodyWidth = bodyXElem ? bodyXElem.clientWidth : 0;
777
789
  this.isPrevWheelTop = isTopWheel;
778
790
  this.wheelYSize = Math.abs(isTopWheel ? deltaTop - remainSize : deltaTop + remainSize);
779
791
  this.wheelYInterval = 0;
@@ -819,6 +831,8 @@ var _default = {
819
831
  fixed: fixedType,
820
832
  scrollTop: bodyElem.scrollTop,
821
833
  scrollLeft: bodyElem.scrollLeft,
834
+ bodyHeight: bodyHeight,
835
+ bodyWidth: bodyWidth,
822
836
  isX: isRollX,
823
837
  isY: isRollY
824
838
  }, evnt);
@@ -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&&Symbol.iterator in Object(e))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,r=new Array(l);t<l;t++)r[t]=e[t];return r}var scrollProcessTimeout,renderType="body";function isOperateMouse(e){return e._isResize||e.lastScrollTime&&Date.now()<e.lastScrollTime+e.delayHover}function renderLine(e,l,t,r,o,n){var i=n.column,s=t.treeOpts,a=t.treeConfig,c=i.slots,i=i.treeNode;return c&&c.line?t.callSlot(c.line,n,e):a&&i&&s.line?[e("div",{class:"vxe-tree--line-wrapper"},[e("div",{class:"vxe-tree--line",style:{height:"".concat((0,_util.calcTreeLine)(n,o),"px"),left:"".concat(r*s.indent+(r?2-(0,_util.getOffsetSize)(t):0)+16,"px")}})])]:[]}function renderColumn(e,l,t,r,o,n,i,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,$=t.highlightCurrentRow,C=t.showOverflow,L=t.isAllOverflow,I=t.align,k=t.currentColumn,E=t.cellClassName,Y=t.cellStyle,R=t.mergeList,A=t.spanMethod,P=t.radioOpts,B=t.checkboxOpts,H=t.expandOpts,M=t.treeOpts,D=t.tooltipOpts,U=t.mouseConfig,q=t.editConfig,X=t.editOpts,j=t.editRules,N=t.validOpts,W=t.editStore,z=t.validStore,F=t.tooltipConfig,V=p.type,K=p.cellRender,G=p.editRender,J=p.align,Q=p.showOverflow,Z=p.className,ee=p.treeNode,le=W.actived,te=_.rHeight,re=D.showAll||D.enabled,oe=t.getColumnIndex(p),ne=t.getVTColumnIndex(p),W=(0,_tools.isEnableConf)(G),_=i?p.fixed!==i:p.fixed&&T,D=_xeUtils.default.isUndefined(Q)||_xeUtils.default.isNull(Q)?C:Q,T="ellipsis"===D,ie="title"===D,se=!0===D||"tooltip"===D,Q=ie||se||T,D={},J=J||I,I=z.row===a&&z.column===p,j=j&&N.showMessage&&("default"===N.message?w||1<x.length:"inline"===N.message),w={colid:p.id},ae=g["cell-mouseenter"],ce=g["cell-mouseleave"],N=G&&q&&"dblclick"===X.trigger,de={$table:t,$seq:r,seq:o,rowid:n,row:a,rowIndex:c,$rowIndex:d,_rowIndex:u,column:p,columnIndex:oe,$columnIndex:f,_columnIndex:ne,fixed:i,type:renderType,isHidden:_,level:s,visibleData:m,data:x,items:y};if(!S&&!O||Q||(T=Q=!0),(ie||se||re||ae||F)&&(D.mouseenter=function(e){isOperateMouse(t)||(ie?_tools.DomTools.updateCellTitle(e.currentTarget,p):(se||re)&&t.triggerBodyTooltipEvent(e,de),ae&&t.emitEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},de),e))}),(se||re||ce||F)&&(D.mouseleave=function(e){isOperateMouse(t)||((se||re)&&t.handleTargetLeaveEvent(e),ce&&t.emitEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},de),e))}),(B.range||U)&&(D.mousedown=function(e){t.triggerCellMousedownEvent(e,de)}),($||g["cell-click"]||G&&q||"row"===H.trigger||"cell"===H.trigger||"row"===P.trigger||"radio"===p.type&&"cell"===P.trigger||"row"===B.trigger||"checkbox"===p.type&&"cell"===B.trigger||"row"===M.trigger||p.treeNode&&"cell"===M.trigger)&&(D.click=function(e){t.triggerCellClickEvent(e,de)}),(N||g["cell-dblclick"])&&(D.dblclick=function(e){t.triggerCellDblclickEvent(e,de)}),R.length){u=(0,_util.mergeBodyMethod)(R,u,ne);if(u){var ne=u.rowspan,ue=u.colspan;if(!ne||!ue)return null;1<ne&&(w.rowspan=ne),1<ue&&(w.colspan=ue)}}else if(A){ue=A(de)||{},A=ue.rowspan,A=void 0===A?1:A,ue=ue.colspan,ue=void 0===ue?1:ue;if(!A||!ue)return null;1<A&&(w.rowspan=A),1<ue&&(w.colspan=ue)}!(_=_&&R&&(1<w.colspan||1<w.rowspan)?!1:_)&&q&&(G||K)&&(X.showStatus||X.showUpdateStatus)&&(v=t.isUpdateByRow(a,p.property));K=[];return _&&C&&L?K.push(e("div",{class:["vxe-cell",{"c--title":ie,"c--tooltip":se,"c--ellipsis":T}],style:{maxHeight:Q&&te?"".concat(te,"px"):""}})):(K.push.apply(K,_toConsumableArray(renderLine(e,l,t,s,y,de)).concat([e("div",{class:["vxe-cell",{"c--title":ie,"c--tooltip":se,"c--ellipsis":T}],style:{maxHeight:Q&&te?"".concat(te,"px"):""},attrs:{title:ie?t.getCellLabel(a,p):null}},p.renderCell(e,de))])),j&&I&&K.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(J),J),_defineProperty(e,"col--".concat(V),V),_defineProperty(e,"col--last",f===h.length-1),_defineProperty(e,"col--tree-node",ee),_defineProperty(e,"col--edit",W),_defineProperty(e,"col--ellipsis",Q),_defineProperty(e,"fixed--hidden",_),_defineProperty(e,"col--dirty",v),_defineProperty(e,"col--actived",q&&W&&le.row===a&&(le.column===p||"row"===X.mode)),_defineProperty(e,"col--valid-error",I),_defineProperty(e,"col--current",k===p),e),_tools.UtilTools.getClass(Z,de),_tools.UtilTools.getClass(E,de)],key:b?p.id:f,attrs:w,style:Object.assign({height:Q&&te?"".concat(te,"px"):""},Y?_xeUtils.default.isFunction(Y)?Y(de):Y:null),on:D},K)}function renderRows(u,p,f,h,y,v,g,m){var x=f.stripe,w=f.rowKey,b=f.highlightHoverRow,T=f.rowClassName,_=f.rowStyle,S=f.editConfig,O=f.showOverflow,$=f.treeConfig,C=f.treeOpts,L=f.editOpts,I=f.treeExpandeds,k=f.scrollYLoad,E=f.scrollYStore,Y=f.editStore,R=f.rowExpandeds,A=f.radioOpts,P=f.checkboxOpts,B=f.expandColumn,H=f.hasFixedColumn,M=[];return g.forEach(function(t,r){var e={},o=(i=r)+1;k&&(o+=E.startIndex);var n=f.getVTRowIndex(t),i=f.getRowIndex(t);b&&(e.mouseenter=function(e){isOperateMouse(f)||f.triggerHoverEvent(e,{row:t,rowIndex:i})},e.mouseleave=function(){isOperateMouse(f)||f.clearHoverRow()});var l,s,a=_tools.UtilTools.getRowid(f,t),c={$table:f,$seq:h,seq:o,rowid:a,fixed:v,type:renderType,level:y,row:t,rowIndex:i,$rowIndex:r},d=!1;S&&(d=-1<Y.insertList.indexOf(t)),M.push(u("tr",{class:["vxe-body--row",{"row--stripe":x&&(f.getVTRowIndex(t)+1)%2==0,"is--new":d,"row--new":d&&(L.showStatus||L.showInsertStatus),"row--radio":A.highlight&&f.selectRow===t,"row--checked":P.highlight&&f.isCheckedByCheckboxRow(t)},T?_xeUtils.default.isFunction(T)?T(c):T:""],attrs:{rowid:a},style:_?_xeUtils.default.isFunction(_)?_(c):_:null,key:w||$?a:r,on:e},m.map(function(e,l){return renderColumn(u,p,f,h,o,a,v,y,t,i,r,n,e,l,m,g)}))),B&&R.length&&-1<R.indexOf(t)&&($&&(l={paddingLeft:"".concat(y*C.indent+30,"px")}),s=B.showOverflow,c=_xeUtils.default.isUndefined(s)||_xeUtils.default.isNull(s)?O:s,s={$table:f,$seq:h,seq:o,column:B,fixed:v,type:renderType,level:y,row:t,rowIndex:i,$rowIndex:r},M.push(u("tr",{class:"vxe-body--expanded-row",key:"expand_".concat(a),style:_?_xeUtils.default.isFunction(_)?_(s):_:null,on:e},[u("td",{class:["vxe-body--expanded-column",{"fixed--hidden":v&&!H,"col--ellipsis":c}],attrs:{colspan:m.length}},[u("div",{class:"vxe-body--expanded-cell",style:l},[B.renderData(u,s)])])]))),$&&I.length&&((s=t[C.children])&&s.length&&-1<I.indexOf(t)&&M.push.apply(M,_toConsumableArray(renderRows(u,p,f,(h?"".concat(h,"."):"").concat(o),y+1,v,s,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,r=this.fixedType,e=e.elemStore,r="".concat(r||"main","-body-");e["".concat(r,"wrapper")]=l,e["".concat(r,"table")]=t.table,e["".concat(r,"colgroup")]=t.colgroup,e["".concat(r,"list")]=t.tbody,e["".concat(r,"xSpace")]=t.xSpace,e["".concat(r,"ySpace")]=t.ySpace,e["".concat(r,"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,r=this.fixedColumn,o=this.fixedType,n=l.$scopedSlots,i=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 o&&(a=!(y||v||d&&g)||f.length||h||u&&p.isMerge?c:r),m=n.empty?n.empty.call(this,{$table:l},t):(n=(n=m.name?_vXETable.default.renderer.get(m.name):null)?n.renderEmpty:null)?n.call(this,t,m,{$table:l}):l.emptyText||_conf.default.i18n("vxe.table.emptyText"),t("div",{class:["vxe-table--body-wrapper",o?"fixed-".concat(o,"--wrapper"):"body--wrapper"],attrs:{xid:i},on:v&&"wheel"===b.mode?{wheel:this.wheelEvent}:{}},[o?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:i,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,"",0,o,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:o,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,o?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,r=this.fixedType,o=t.$refs,n=t.highlightHoverRow,i=t.scrollXLoad,s=t.scrollYLoad,a=t.lastScrollTop,c=t.lastScrollLeft,d=o.tableHeader,u=o.tableBody,p=o.leftBody,f=o.rightBody,h=o.tableFooter,y=o.validTip,o=d?d.$el:null,d=h?h.$el:null,h=u.$el,u=p?p.$el:null,p=f?f.$el:null,f=l.scrollTop,l=h.scrollLeft,c=l!==c,a=f!==a;t.lastScrollTop=f,t.lastScrollLeft=l,t.lastScrollTime=Date.now(),n&&t.clearHoverRow(),u&&"left"===r?syncBodyScroll(f=u.scrollTop,h,p):p&&"right"===r?syncBodyScroll(f=p.scrollTop,h,u):(c&&(o&&(o.scrollLeft=h.scrollLeft),d&&(d.scrollLeft=h.scrollLeft)),(u||p)&&(t.checkScrolling(),a&&syncBodyScroll(f,u,p))),i&&c&&t.triggerScrollXEvent(e),s&&a&&t.triggerScrollYEvent(e),c&&y&&y.visible&&y.updatePlacement(),t.emitEvent("scroll",{type:renderType,fixed:r,scrollTop:f,scrollLeft:l,isX:c,isY:a},e)},handleWheel:function(s,a,e,c,d){var u=this,p=this.$parent,l=p.$refs,t=l.tableBody,r=l.leftBody,l=l.rightBody,f=t.$el,h=r?r.$el:null,y=l?l.$el:null,l=this.isPrevWheelTop===a?Math.max(0,this.wheelYSize-this.wheelYTotal):0;this.isPrevWheelTop=a,this.wheelYSize=Math.abs(a?e-l:e+l),this.wheelYInterval=0,this.wheelYTotal=0,clearTimeout(this.wheelTime),function e(){var l,t,r=u.fixedType,o=u.wheelYTotal,n=u.wheelYSize,i=u.wheelYInterval;o<n&&(n<(o+=i=Math.max(5,Math.floor(1.5*i)))&&(i-=o-n),t=f.scrollTop,l=f.clientHeight,n=f.scrollHeight,t=t+i*(a?-1:1),f.scrollTop=t,h&&(h.scrollTop=t),y&&(y.scrollTop=t),(a?t<n-l:0<=t)&&(u.wheelTime=setTimeout(e,10)),u.wheelYTotal=o,u.wheelYInterval=i,p.emitEvent("scroll",{type:renderType,fixed:r,scrollTop:f.scrollTop,scrollLeft:f.scrollLeft,isX:c,isY:d},s))}()},wheelEvent:function(e){var l=e.deltaY,t=e.deltaX,r=this.$el,o=this.$parent,n=o.$refs,i=o.highlightHoverRow,s=o.scrollYLoad,a=o.lastScrollTop,c=o.lastScrollLeft,d=n.tableBody.$el,n=_dom.browse.firefox?40*l:l,l=_dom.browse.firefox?40*t:t,t=n<0;(t?r.scrollTop<=0:r.scrollTop>=r.scrollHeight-r.clientHeight)||(r=r.scrollTop+n,c=(l=d.scrollLeft+l)!==c,(a=r!==a)&&(e.preventDefault(),o.lastScrollTop=r,o.lastScrollLeft=l,o.lastScrollTime=Date.now(),i&&o.clearHoverRow(),this.handleWheel(e,t,n,c,a),s&&o.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&&Symbol.iterator in Object(e))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,Y=t.cellStyle,R=t.mergeList,A=t.spanMethod,H=t.radioOpts,P=t.checkboxOpts,B=t.expandOpts,M=t.treeOpts,D=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=p.type,K=p.cellRender,G=p.editRender,J=p.align,Q=p.showOverflow,Z=p.className,ee=p.treeNode,le=N.actived,te=_.rHeight,oe=D.showAll||D.enabled,re=t.getColumnIndex(p),ie=t.getVTColumnIndex(p),N=(0,_tools.isEnableConf)(G),_=n?p.fixed!==n:p.fixed&&T,D=_xeUtils.default.isUndefined(Q)||_xeUtils.default.isNull(Q)?C:Q,T="ellipsis"===D,ne="title"===D,ae=!0===D||"tooltip"===D,Q=ne||ae||T,D={},J=J||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},se=g["cell-mouseenter"],ce=g["cell-mouseleave"],j=G&&q&&"dblclick"===W.trigger,de={$table:t,$seq:o,seq:r,rowid:i,row:s,rowIndex:c,$rowIndex:d,_rowIndex:u,column:p,columnIndex:re,$columnIndex:f,_columnIndex:ie,fixed:n,type:renderType,isHidden:_,level:a,visibleData:m,data:x,items:y};if(!S&&!O||Q||(T=Q=!0),(ne||ae||oe||se||F)&&(D.mouseenter=function(e){isOperateMouse(t)||(ne?_tools.DomTools.updateCellTitle(e.currentTarget,p):(ae||oe)&&t.triggerBodyTooltipEvent(e,de),se&&t.emitEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},de),e))}),(ae||oe||ce||F)&&(D.mouseleave=function(e){isOperateMouse(t)||((ae||oe)&&t.handleTargetLeaveEvent(e),ce&&t.emitEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},de),e))}),(P.range||U)&&(D.mousedown=function(e){t.triggerCellMousedownEvent(e,de)}),($||g["cell-click"]||G&&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"===M.trigger||p.treeNode&&"cell"===M.trigger)&&(D.click=function(e){t.triggerCellClickEvent(e,de)}),(j||g["cell-dblclick"])&&(D.dblclick=function(e){t.triggerCellDblclickEvent(e,de)}),R.length){u=(0,_util.mergeBodyMethod)(R,u,ie);if(u){var ie=u.rowspan,ue=u.colspan;if(!ie||!ue)return null;1<ie&&(w.rowspan=ie),1<ue&&(w.colspan=ue)}}else if(A){ue=A(de)||{},A=ue.rowspan,A=void 0===A?1:A,ue=ue.colspan,ue=void 0===ue?1:ue;if(!A||!ue)return null;1<A&&(w.rowspan=A),1<ue&&(w.colspan=ue)}!(_=_&&R&&(1<w.colspan||1<w.rowspan)?!1:_)&&q&&(G||K)&&(W.showStatus||W.showUpdateStatus)&&(v=t.isUpdateByRow(s,p.property));K=[];return _&&C&&L?K.push(e("div",{class:["vxe-cell",{"c--title":ne,"c--tooltip":ae,"c--ellipsis":T}],style:{maxHeight:Q&&te?"".concat(te,"px"):""}})):(K.push.apply(K,_toConsumableArray(renderLine(e,l,t,a,y,de)).concat([e("div",{class:["vxe-cell",{"c--title":ne,"c--tooltip":ae,"c--ellipsis":T}],style:{maxHeight:Q&&te?"".concat(te,"px"):""},attrs:{title:ne?t.getCellLabel(s,p):null}},p.renderCell(e,de))])),X&&I&&K.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(J),J),_defineProperty(e,"col--".concat(V),V),_defineProperty(e,"col--last",f===h.length-1),_defineProperty(e,"col--tree-node",ee),_defineProperty(e,"col--edit",N),_defineProperty(e,"col--ellipsis",Q),_defineProperty(e,"fixed--hidden",_),_defineProperty(e,"col--dirty",v),_defineProperty(e,"col--actived",q&&N&&le.row===s&&(le.column===p||"row"===W.mode)),_defineProperty(e,"col--valid-error",I),_defineProperty(e,"col--current",k===p),e),_tools.UtilTools.getClass(Z,de),_tools.UtilTools.getClass(E,de)],key:b?p.id:f,attrs:w,style:Object.assign({height:Q&&te?"".concat(te,"px"):""},Y?_xeUtils.default.isFunction(Y)?Y(de):Y:null),on:D},K)}function renderRows(u,p,f,h,y,v,g,m){var x=f.stripe,w=f.rowKey,b=f.highlightHoverRow,T=f.rowClassName,_=f.rowStyle,S=f.editConfig,O=f.showOverflow,$=f.treeConfig,C=f.treeOpts,L=f.editOpts,I=f.treeExpandeds,k=f.scrollYLoad,E=f.scrollYStore,Y=f.editStore,R=f.rowExpandeds,A=f.radioOpts,H=f.checkboxOpts,P=f.expandColumn,B=f.hasFixedColumn,M=[];return g.forEach(function(t,o){var e={},r=(n=o)+1;k&&(r+=E.startIndex);var i=f.getVTRowIndex(t),n=f.getRowIndex(t);b&&(e.mouseenter=function(e){isOperateMouse(f)||f.triggerHoverEvent(e,{row:t,rowIndex:n})},e.mouseleave=function(){isOperateMouse(f)||f.clearHoverRow()});var l,a,s=_tools.UtilTools.getRowid(f,t),c={$table:f,$seq:h,seq:r,rowid:s,fixed:v,type:renderType,level:y,row:t,rowIndex:n,$rowIndex:o},d=!1;S&&(d=-1<Y.insertList.indexOf(t)),M.push(u("tr",{class:["vxe-body--row",{"row--stripe":x&&(f.getVTRowIndex(t)+1)%2==0,"is--new":d,"row--new":d&&(L.showStatus||L.showInsertStatus),"row--radio":A.highlight&&f.selectRow===t,"row--checked":H.highlight&&f.isCheckedByCheckboxRow(t)},T?_xeUtils.default.isFunction(T)?T(c):T:""],attrs:{rowid:s},style:_?_xeUtils.default.isFunction(_)?_(c):_:null,key:w||$?s:o,on:e},m.map(function(e,l){return renderColumn(u,p,f,h,r,s,v,y,t,n,o,i,e,l,m,g)}))),P&&R.length&&-1<R.indexOf(t)&&($&&(l={paddingLeft:"".concat(y*C.indent+30,"px")}),a=P.showOverflow,c=_xeUtils.default.isUndefined(a)||_xeUtils.default.isNull(a)?O:a,a={$table:f,$seq:h,seq:r,column:P,fixed:v,type:renderType,level:y,row:t,rowIndex:n,$rowIndex:o},M.push(u("tr",{class:"vxe-body--expanded-row",key:"expand_".concat(s),style:_?_xeUtils.default.isFunction(_)?_(a):_:null,on:e},[u("td",{class:["vxe-body--expanded-column",{"fixed--hidden":v&&!B,"col--ellipsis":c}],attrs:{colspan:m.length}},[u("div",{class:"vxe-body--expanded-cell",style:l},[P.renderData(u,a)])])]))),$&&I.length&&((a=t[C.children])&&a.length&&-1<I.indexOf(t)&&M.push.apply(M,_toConsumableArray(renderRows(u,p,f,(h?"".concat(h,"."):"").concat(r),y+1,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,"",0,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,t=t+n*(s?-1:1),f.scrollTop=t,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;
@@ -646,8 +646,7 @@ var Methods = {
646
646
  children: 'children'
647
647
  });
648
648
 
649
- this.handleColumn(collectColumn);
650
- return this.$nextTick();
649
+ return this.handleColumn(collectColumn);
651
650
  },
652
651
 
653
652
  /**
@@ -685,13 +684,15 @@ var Methods = {
685
684
  }
686
685
  }
687
686
 
688
- this.$nextTick(function () {
687
+ return this.$nextTick().then(function () {
689
688
  if (_this7.$toolbar) {
690
689
  _this7.$toolbar.syncUpdate({
691
690
  collectColumn: collectColumn,
692
691
  $table: _this7
693
692
  });
694
693
  }
694
+
695
+ return _this7.recalculate();
695
696
  });
696
697
  },
697
698
 
@@ -1088,16 +1089,30 @@ var Methods = {
1088
1089
  treeOpts = this.treeOpts,
1089
1090
  expandOpts = this.expandOpts;
1090
1091
  var rowkey = getRowkey(this);
1091
- this.visibleColumn.forEach(function (_ref) {
1092
- var property = _ref.property,
1093
- editRender = _ref.editRender;
1092
+ this.tableFullColumn.forEach(function (column) {
1093
+ var property = column.property,
1094
+ editRender = column.editRender;
1094
1095
 
1095
1096
  if (property && !_xeUtils.default.has(record, property)) {
1096
- _xeUtils.default.set(record, property, editRender && !_xeUtils.default.isUndefined(editRender.defaultValue) ? editRender.defaultValue : null);
1097
+ var cellValue = null;
1098
+
1099
+ if (editRender) {
1100
+ var defaultValue = editRender.defaultValue;
1101
+
1102
+ if (_xeUtils.default.isFunction(defaultValue)) {
1103
+ cellValue = defaultValue({
1104
+ column: column
1105
+ });
1106
+ } else if (!_xeUtils.default.isUndefined(defaultValue)) {
1107
+ cellValue = defaultValue;
1108
+ }
1109
+ }
1110
+
1111
+ _xeUtils.default.set(record, property, cellValue);
1097
1112
  }
1098
1113
  });
1099
- var ohterFields = [radioOpts.labelField, checkboxOpts.checkField, checkboxOpts.labelField, expandOpts.labelField];
1100
- ohterFields.forEach(function (key) {
1114
+ var otherFields = [radioOpts.labelField, checkboxOpts.checkField, checkboxOpts.labelField, expandOpts.labelField];
1115
+ otherFields.forEach(function (key) {
1101
1116
  if (key && (0, _utils.eqEmptyValue)(_xeUtils.default.get(record, key))) {
1102
1117
  _xeUtils.default.set(record, key, null);
1103
1118
  }
@@ -1462,10 +1477,10 @@ var Methods = {
1462
1477
 
1463
1478
  if (filterColumns.length) {
1464
1479
  tableData = tableData.filter(function (row) {
1465
- return filterColumns.every(function (_ref2) {
1466
- var column = _ref2.column,
1467
- valueList = _ref2.valueList,
1468
- itemList = _ref2.itemList;
1480
+ return filterColumns.every(function (_ref) {
1481
+ var column = _ref.column,
1482
+ valueList = _ref.valueList,
1483
+ itemList = _ref.itemList;
1469
1484
 
1470
1485
  if (valueList.length && !allRemoteFilter) {
1471
1486
  var filterMethod = column.filterMethod,
@@ -1531,9 +1546,9 @@ var Methods = {
1531
1546
  } else {
1532
1547
  // 兼容 v4
1533
1548
  if (sortMultiple) {
1534
- tableData = _xeUtils.default.orderBy(tableData, orderColumns.map(function (_ref3) {
1535
- var column = _ref3.column,
1536
- order = _ref3.order;
1549
+ tableData = _xeUtils.default.orderBy(tableData, orderColumns.map(function (_ref2) {
1550
+ var column = _ref2.column,
1551
+ order = _ref2.order;
1537
1552
  return [getOrderField(_this15, column), order];
1538
1553
  }));
1539
1554
  } else {
@@ -1546,9 +1561,9 @@ var Methods = {
1546
1561
  });
1547
1562
  }
1548
1563
 
1549
- tableData = _xeUtils.default.orderBy(tableData, sortByConfs || [firstOrderColumn].map(function (_ref4) {
1550
- var column = _ref4.column,
1551
- order = _ref4.order;
1564
+ tableData = _xeUtils.default.orderBy(tableData, sortByConfs || [firstOrderColumn].map(function (_ref3) {
1565
+ var column = _ref3.column,
1566
+ order = _ref3.order;
1552
1567
  return [getOrderField(_this15, column), order];
1553
1568
  }));
1554
1569
  }
@@ -1780,9 +1795,9 @@ var Methods = {
1780
1795
  }
1781
1796
  });
1782
1797
 
1783
- _xeUtils.default.each(customMap, function (_ref5, field) {
1784
- var visible = _ref5.visible,
1785
- resizeWidth = _ref5.resizeWidth;
1798
+ _xeUtils.default.each(customMap, function (_ref4, field) {
1799
+ var visible = _ref4.visible,
1800
+ resizeWidth = _ref4.resizeWidth;
1786
1801
  var column = keyMap[field];
1787
1802
 
1788
1803
  if (column) {
@@ -3417,10 +3432,10 @@ var Methods = {
3417
3432
  * 多选,行选中事件
3418
3433
  * value 选中true 不选false 半选-1
3419
3434
  */
3420
- handleSelectRow: function handleSelectRow(_ref6, value) {
3435
+ handleSelectRow: function handleSelectRow(_ref5, value) {
3421
3436
  var _this28 = this;
3422
3437
 
3423
- var row = _ref6.row;
3438
+ var row = _ref5.row;
3424
3439
  var selection = this.selection,
3425
3440
  afterFullData = this.afterFullData,
3426
3441
  treeConfig = this.treeConfig,
@@ -4237,8 +4252,8 @@ var Methods = {
4237
4252
  /**
4238
4253
  * 行 hover 事件
4239
4254
  */
4240
- triggerHoverEvent: function triggerHoverEvent(evnt, _ref7) {
4241
- var row = _ref7.row;
4255
+ triggerHoverEvent: function triggerHoverEvent(evnt, _ref6) {
4256
+ var row = _ref6.row;
4242
4257
  this.setHoverRow(row);
4243
4258
  },
4244
4259
  setHoverRow: function setHoverRow(row) {
@@ -4620,10 +4635,10 @@ var Methods = {
4620
4635
  }
4621
4636
 
4622
4637
  if (!sortOpts.remote) {
4623
- return this.handleTableData(true);
4638
+ this.handleTableData(true);
4624
4639
  }
4625
4640
 
4626
- return this.$nextTick();
4641
+ return this.$nextTick().then(this.updateStyle);
4627
4642
  },
4628
4643
  // 在 v3 中废弃
4629
4644
  getSortColumn: function getSortColumn() {
@@ -5741,8 +5756,8 @@ var Methods = {
5741
5756
  }
5742
5757
 
5743
5758
  _this47.clearValidate();
5744
- }).catch(function (_ref8) {
5745
- var rule = _ref8.rule;
5759
+ }).catch(function (_ref7) {
5760
+ var rule = _ref7.rule;
5746
5761
 
5747
5762
  if (customVal) {
5748
5763
  setCellValue(row, column, cellValue);