vxe-table 3.6.14-beta.0 → 3.6.14-beta.2
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.md +1 -1
- package/lib/edit/src/mixin.js +23 -31
- package/lib/edit/src/mixin.min.js +1 -1
- package/lib/form/src/form-config-item.js +7 -2
- package/lib/form/src/form-config-item.min.js +1 -1
- package/lib/form/src/form-item.js +7 -2
- package/lib/form/src/form-item.min.js +1 -1
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/index.css +1 -1
- package/lib/index.umd.js +114 -91
- package/lib/index.umd.min.js +1 -1
- package/lib/select/src/select.js +8 -2
- package/lib/select/src/select.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/src/body.js +5 -5
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/methods.js +68 -46
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +3 -1
- package/lib/table/src/table.min.js +1 -1
- package/lib/tools/log.js +1 -1
- package/lib/tools/log.min.js +1 -1
- package/lib/v-x-e-table/index.js +1 -1
- package/lib/v-x-e-table/index.min.js +1 -1
- package/package.json +1 -1
- package/packages/edit/src/mixin.js +18 -22
- package/packages/form/src/form-config-item.js +7 -2
- package/packages/form/src/form-item.js +7 -2
- package/packages/select/src/select.js +4 -2
- package/packages/table/src/body.js +5 -5
- package/packages/table/src/methods.js +66 -35
- package/packages/table/src/table.js +3 -1
- package/types/table.d.ts +6 -0
- package/types/v-x-e-table/renderer.d.ts +11 -7
- /package/lib/icon/style/{iconfont.1682555826742.ttf → iconfont.1684560851897.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1682555826742.woff → iconfont.1684560851897.woff} +0 -0
- /package/lib/icon/style/{iconfont.1682555826742.woff2 → iconfont.1684560851897.woff2} +0 -0
- /package/lib/{iconfont.1682555826742.ttf → iconfont.1684560851897.ttf} +0 -0
- /package/lib/{iconfont.1682555826742.woff → iconfont.1684560851897.woff} +0 -0
- /package/lib/{iconfont.1682555826742.woff2 → iconfont.1684560851897.woff2} +0 -0
package/lib/table/src/body.js
CHANGED
|
@@ -113,7 +113,8 @@ function renderColumn(h, _vm, $xetable, seq, rowid, fixedType, rowLevel, row, ro
|
|
|
113
113
|
var rowHeight = rowOpts.height;
|
|
114
114
|
var renderOpts = editRender || cellRender;
|
|
115
115
|
var compConf = renderOpts ? _vXETable["default"].renderer.get(renderOpts.name) : null;
|
|
116
|
-
var
|
|
116
|
+
var compCellClassName = compConf ? compConf.cellClassName : '';
|
|
117
|
+
var compCellStyle = compConf ? compConf.cellStyle : '';
|
|
117
118
|
var showAllTip = tooltipOpts.showAll || tooltipOpts.enabled;
|
|
118
119
|
var columnIndex = $xetable.getColumnIndex(column);
|
|
119
120
|
var _columnIndex = $xetable.getVTColumnIndex(column);
|
|
@@ -295,12 +296,12 @@ function renderColumn(h, _vm, $xetable, seq, rowid, fixedType, rowLevel, row, ro
|
|
|
295
296
|
}
|
|
296
297
|
}
|
|
297
298
|
return h('td', {
|
|
298
|
-
"class": ['vxe-body--column', column.id, (_ref2 = {}, _defineProperty(_ref2, "col--".concat(cellAlign), cellAlign), _defineProperty(_ref2, "col--".concat(type), type), _defineProperty(_ref2, 'col--last', $columnIndex === columns.length - 1), _defineProperty(_ref2, 'col--tree-node', treeNode), _defineProperty(_ref2, 'col--edit', isEdit), _defineProperty(_ref2, 'col--ellipsis', hasEllipsis), _defineProperty(_ref2, 'fixed--hidden', fixedHiddenColumn), _defineProperty(_ref2, 'col--dirty', isDirty), _defineProperty(_ref2, 'col--actived', editConfig && isEdit && actived.row === row && (actived.column === column || editOpts.mode === 'row')), _defineProperty(_ref2, 'col--valid-error', hasValidError), _defineProperty(_ref2, 'col--current', currentColumn === column), _ref2), _utils["default"].getClass(
|
|
299
|
+
"class": ['vxe-body--column', column.id, (_ref2 = {}, _defineProperty(_ref2, "col--".concat(cellAlign), cellAlign), _defineProperty(_ref2, "col--".concat(type), type), _defineProperty(_ref2, 'col--last', $columnIndex === columns.length - 1), _defineProperty(_ref2, 'col--tree-node', treeNode), _defineProperty(_ref2, 'col--edit', isEdit), _defineProperty(_ref2, 'col--ellipsis', hasEllipsis), _defineProperty(_ref2, 'fixed--hidden', fixedHiddenColumn), _defineProperty(_ref2, 'col--dirty', isDirty), _defineProperty(_ref2, 'col--actived', editConfig && isEdit && actived.row === row && (actived.column === column || editOpts.mode === 'row')), _defineProperty(_ref2, 'col--valid-error', hasValidError), _defineProperty(_ref2, 'col--current', currentColumn === column), _ref2), _utils["default"].getClass(compCellClassName, params), _utils["default"].getClass(className, params), _utils["default"].getClass(allCellClassName, params)],
|
|
299
300
|
key: columnKey || columnOpts.useKey ? column.id : $columnIndex,
|
|
300
301
|
attrs: attrs,
|
|
301
302
|
style: Object.assign({
|
|
302
303
|
height: hasEllipsis && (scrollYRHeight || rowHeight) ? "".concat(scrollYRHeight || rowHeight, "px") : ''
|
|
303
|
-
},
|
|
304
|
+
}, _xeUtils["default"].isFunction(compCellStyle) ? compCellStyle(params) : compCellStyle, _xeUtils["default"].isFunction(cellStyle) ? cellStyle(params) : cellStyle),
|
|
304
305
|
on: tdOns
|
|
305
306
|
}, tdVNs);
|
|
306
307
|
}
|
|
@@ -318,7 +319,6 @@ function renderRows(h, _vm, $xetable, fixedType, tableData, tableColumn) {
|
|
|
318
319
|
editOpts = $xetable.editOpts,
|
|
319
320
|
treeExpandeds = $xetable.treeExpandeds,
|
|
320
321
|
scrollYLoad = $xetable.scrollYLoad,
|
|
321
|
-
editStore = $xetable.editStore,
|
|
322
322
|
rowExpandeds = $xetable.rowExpandeds,
|
|
323
323
|
radioOpts = $xetable.radioOpts,
|
|
324
324
|
checkboxOpts = $xetable.checkboxOpts,
|
|
@@ -374,7 +374,7 @@ function renderRows(h, _vm, $xetable, fixedType, tableData, tableColumn) {
|
|
|
374
374
|
// 是否新增行
|
|
375
375
|
var isNewRow = false;
|
|
376
376
|
if (editConfig) {
|
|
377
|
-
isNewRow =
|
|
377
|
+
isNewRow = $xetable.isInsertByRow(row);
|
|
378
378
|
}
|
|
379
379
|
if (treeConfig && !scrollYLoad && !treeOpts.transform && treeExpandeds.length) {
|
|
380
380
|
rowChildren = row[treeOpts.children];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}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")),_utils=_interopRequireWildcard(require("../../tools/utils")),_util=require("./util"),_dom=_interopRequireDefault(require("../../tools/dom")),_vn=require("../../tools/vn");function _getRequireWildcardCache(e){var l,t;return"function"!=typeof WeakMap?null:(l=new WeakMap,t=new WeakMap,(_getRequireWildcardCache=function(e){return e?t:l})(e))}function _interopRequireWildcard(e,l){if(!l&&e&&e.__esModule)return e;if(null===e||"object"!==_typeof(e)&&"function"!=typeof e)return{default:e};l=_getRequireWildcardCache(l);if(l&&l.has(e))return l.get(e);var t,r,o={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(t in e)"default"!==t&&Object.prototype.hasOwnProperty.call(e,t)&&((r=n?Object.getOwnPropertyDescriptor(e,t):null)&&(r.get||r.set)?Object.defineProperty(o,t,r):o[t]=e[t]);return o.default=e,l&&l.set(e,o),o}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){var t;if(e)return"string"==typeof e?_arrayLikeToArray(e,l):"Map"===(t="Object"===(t=Object.prototype.toString.call(e).slice(8,-1))&&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,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){var o=r.row,n=r.column,i=t.treeOpts,a=t.treeConfig,s=t.fullAllDataRowIdData,c=n.slots,n=n.treeNode,s=s[(0,_util.getRowid)(t,o)],o=0,d=0,u=[];return s&&(o=s.level,d=s._index,u=s.items),c&&c.line?t.callSlot(c.line,r,e):a&&n&&i.line?[e("div",{class:"vxe-tree--line-wrapper"},[e("div",{class:"vxe-tree--line",style:{height:"".concat((0,_util.calcTreeLine)(r,u,d),"px"),left:"".concat(o*i.indent+(o?2-(0,_util.getOffsetSize)(t):0)+16,"px")}})])]:[]}function renderColumn(e,P,l,t,r,o,n,i,a,s,W,c,d,D,u){var M,p=l.$listeners,f=l.afterFullData,y=l.tableData,h=l.height,q=l.columnKey,g=l.overflowX,v=l.sYOpts,B=l.scrollXLoad,j=l.scrollYLoad,U=l.highlightCurrentRow,X=l.showOverflow,N=l.isAllOverflow,m=l.align,z=l.currentColumn,F=l.cellClassName,w=l.cellStyle,x=l.mergeList,V=l.spanMethod,K=l.radioOpts,G=l.checkboxOpts,J=l.expandOpts,Q=l.treeOpts,b=l.tooltipOpts,Z=l.mouseConfig,_=l.editConfig,T=l.editOpts,ee=l.editRules,S=l.validOpts,le=l.editStore,O=l.validStore,te=l.tooltipConfig,re=l.rowOpts,oe=l.columnOpts,ne=c.type,ie=c.cellRender,C=c.editRender,ae=c.align,$=c.showOverflow,se=c.className,ce=c.treeNode,le=le.actived,v=v.rHeight,L=re.height,R=C||ie,R=R?_vXETable.default.renderer.get(R.name):null,R=R?R.cellClassName:"",k=b.showAll||b.enabled,b=l.getColumnIndex(c),de=l.getVTColumnIndex(c),ue=(0,_utils.isEnableConf)(C),g=o?c.fixed!==o:c.fixed&&g,$=_xeUtils.default.isUndefined($)||_xeUtils.default.isNull($)?X:$,I="ellipsis"===$,H="title"===$,E=!0===$||"tooltip"===$,$=H||E||I,A={},ae=ae||m,m=O.row===i&&O.column===c,ee=ee&&S.showMessage&&("default"===S.message?h||1<y.length:"inline"===S.message),h={colid:c.id},pe=p["cell-mouseenter"],fe=p["cell-mouseleave"],S=C&&_&&"dblclick"===T.trigger,Y={$table:l,$grid:l.$xegrid,seq:t,rowid:r,row:i,rowIndex:a,$rowIndex:s,_rowIndex:W,column:c,columnIndex:b,$columnIndex:d,_columnIndex:de,fixed:o,type:renderType,isHidden:g,level:n,visibleData:f,data:y,items:u};if(!B&&!j||$||(I=$=!0),(H||E||k||pe||te)&&(A.mouseenter=function(e){isOperateMouse(l)||(H?_dom.default.updateCellTitle(e.currentTarget,c):(E||k)&&l.triggerBodyTooltipEvent(e,Y),pe&&l.emitEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},Y),e))}),(E||k||fe||te)&&(A.mouseleave=function(e){isOperateMouse(l)||((E||k)&&l.handleTargetLeaveEvent(e),fe&&l.emitEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},Y),e))}),(G.range||Z)&&(A.mousedown=function(e){l.triggerCellMousedownEvent(e,Y)}),(re.isCurrent||U||p["cell-click"]||C&&_||"row"===J.trigger||"cell"===J.trigger||"row"===K.trigger||"radio"===c.type&&"cell"===K.trigger||"row"===G.trigger||"checkbox"===c.type&&"cell"===G.trigger||"row"===Q.trigger||c.treeNode&&"cell"===Q.trigger)&&(A.click=function(e){l.triggerCellClickEvent(e,Y)}),(S||p["cell-dblclick"])&&(A.dblclick=function(e){l.triggerCellDblclickEvent(e,Y)}),x.length){t=(0,_util.mergeBodyMethod)(x,W,de);if(t){r=t.rowspan,a=t.colspan;if(!r||!a)return null;1<r&&(h.rowspan=r),1<a&&(h.colspan=a)}}else if(V){s=V(Y)||{},b=s.rowspan,o=void 0===b?1:b,n=s.colspan,f=void 0===n?1:n;if(!o||!f)return null;1<o&&(h.rowspan=o),1<f&&(h.colspan=f)}!(g=g&&x&&(1<h.colspan||1<h.rowspan)?!1:g)&&_&&(C||ie)&&(T.showStatus||T.showUpdateStatus)&&(M=l.isUpdateByRow(i,c.field));y=[];return g&&X&&N?y.push(e("div",{class:["vxe-cell",{"c--title":H,"c--tooltip":E,"c--ellipsis":I}],style:{maxHeight:$&&(v||L)?"".concat(v||L,"px"):""}})):(y.push.apply(y,_toConsumableArray(renderLine(e,P,l,Y)).concat([e("div",{class:["vxe-cell",{"c--title":H,"c--tooltip":E,"c--ellipsis":I}],style:{maxHeight:$&&(v||L)?"".concat(v||L,"px"):""},attrs:{title:H?l.getCellLabel(i,c):null}},c.renderCell(e,Y))])),ee&&m&&y.push(e("div",{class:"vxe-cell--valid",style:O.rule&&O.rule.maxWidth?{width:"".concat(O.rule.maxWidth,"px")}:null},[e("span",{class:"vxe-cell--valid-msg"},O.content)]))),e("td",{class:["vxe-body--column",c.id,(_defineProperty(u={},"col--".concat(ae),ae),_defineProperty(u,"col--".concat(ne),ne),_defineProperty(u,"col--last",d===D.length-1),_defineProperty(u,"col--tree-node",ce),_defineProperty(u,"col--edit",ue),_defineProperty(u,"col--ellipsis",$),_defineProperty(u,"fixed--hidden",g),_defineProperty(u,"col--dirty",M),_defineProperty(u,"col--actived",_&&ue&&le.row===i&&(le.column===c||"row"===T.mode)),_defineProperty(u,"col--valid-error",m),_defineProperty(u,"col--current",z===c),u),_utils.default.getClass(R,Y),_utils.default.getClass(se,Y),_utils.default.getClass(F,Y)],key:q||oe.useKey?c.id:d,attrs:h,style:Object.assign({height:$&&(v||L)?"".concat(v||L,"px"):""},w?_xeUtils.default.isFunction(w)?w(Y):w:null),on:A},y)}function renderRows(y,h,g,v,m,w){var x=g.stripe,b=g.rowKey,_=g.highlightHoverRow,T=g.rowClassName,S=g.rowStyle,O=g.editConfig,C=g.showOverflow,$=g.treeConfig,L=g.treeOpts,R=g.expandOpts,k=g.editOpts,I=g.treeExpandeds,H=g.scrollYLoad,E=g.editStore,A=g.rowExpandeds,Y=g.radioOpts,P=g.checkboxOpts,W=g.expandColumn,D=g.hasFixedColumn,M=g.fullAllDataRowIdData,q=g.rowOpts,B=[];return m.forEach(function(t,r){var e,l={},o=g.getVTRowIndex(t),n=g.getRowIndex(t),i=((q.isHover||_)&&(l.mouseenter=function(e){isOperateMouse(g)||g.triggerHoverEvent(e,{row:t,rowIndex:n})},l.mouseleave=function(){isOperateMouse(g)||g.clearHoverRow()}),(0,_util.getRowid)(g,t)),a=M[i],s=a?a.level:0,c=a?a.seq:-1,a={$table:g,seq:c,rowid:i,fixed:v,type:renderType,level:s,row:t,rowIndex:n,$rowIndex:r},d=W&&A.length&&-1<A.indexOf(t),u=!1,p=[],f=!1;O&&(f=-1<E.insertList.indexOf(t)),$&&!H&&!L.transform&&I.length&&(u=(p=t[L.children])&&p.length&&-1<I.indexOf(t)),B.push(y("tr",{class:["vxe-body--row",$?"row--level-".concat(s):"",{"row--stripe":x&&(g.getVTRowIndex(t)+1)%2==0,"is--new":f,"is--expand-row":d,"is--expand-tree":u,"row--new":f&&(k.showStatus||k.showInsertStatus),"row--radio":Y.highlight&&g.selectRow===t,"row--checked":P.highlight&&g.isCheckedByCheckboxRow(t)},T?_xeUtils.default.isFunction(T)?T(a):T:""],attrs:{rowid:i},style:S?_xeUtils.default.isFunction(S)?S(a):S:null,key:b||q.useKey||$?i:r,on:l},w.map(function(e,l){return renderColumn(y,h,g,c,i,v,s,t,n,r,o,e,l,w,m)}))),d&&(f={},(a=R.height)&&(f.height="".concat(a,"px")),$&&(f.paddingLeft="".concat(s*L.indent+30,"px")),d=W.showOverflow,d=_xeUtils.default.isUndefined(d)||_xeUtils.default.isNull(d)?C:d,e={$table:g,seq:c,column:W,fixed:v,type:renderType,level:s,row:t,rowIndex:n,$rowIndex:r},B.push(y("tr",{class:"vxe-body--expanded-row",key:"expand_".concat(i),style:S?_xeUtils.default.isFunction(S)?S(e):S:null,on:l},[y("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":v&&!D,"col--ellipsis":d},attrs:{colspan:w.length}},[y("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":a},style:f},[W.renderData(y,e)])])]))),u&&B.push.apply(B,_toConsumableArray(renderRows(y,h,g,v,p,w)))}),B}function syncBodyScroll(e,l,t,r,o){(r||o)&&(r&&((0,_util.removeScrollListener)(r),r.scrollTop=t),o&&((0,_util.removeScrollListener)(o),o.scrollTop=t),clearTimeout(scrollProcessTimeout),scrollProcessTimeout=setTimeout(function(){(0,_util.restoreScrollListener)(r),(0,_util.restoreScrollListener)(o)},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},destroyed:function(){var e=this.$parent,l=this.fixedType,e=e.elemStore,l="".concat(l||"main","-body-");e["".concat(l,"wrapper")]=null,e["".concat(l,"table")]=null,e["".concat(l,"colgroup")]=null,e["".concat(l,"list")]=null,e["".concat(l,"xSpace")]=null,e["".concat(l,"ySpace")]=null,e["".concat(l,"emptyBlock")]=null},render:function(t){var e=this._e,l=this.$parent,r=this.fixedColumn,o=this.fixedType,n=l.$scopedSlots,i=l.tId,a=l.tableData,s=l.tableColumn,c=l.visibleColumn,d=l.expandColumn,u=l.showOverflow,p=l.keyboardConfig,f=l.keyboardOpts,y=l.mergeList,h=l.spanMethod,g=l.scrollXLoad,v=l.scrollYLoad,m=l.isAllOverflow,w=l.emptyOpts,x=l.mouseConfig,b=l.mouseOpts,_=l.sYOpts;return o&&(s=d||!(g||v||u&&m)||y.length||h||p&&f.isMerge?c:r),u=n.empty?n.empty.call(this,{$table:l},t):(g=(d=w.name?_vXETable.default.renderer.get(w.name):null)?d.renderEmpty:null)?(0,_vn.getSlotVNs)(g.call(this,t,w,{$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"===_.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"},s.map(function(e,l){return t("col",{attrs:{name:e.id},key:l})})),t("tbody",{ref:"tbody"},renderRows(t,this,l,o,a,s))]),t("div",{class:"vxe-table--checkbox-range"}),x&&b.area?t("div",{class:"vxe-table--cell-area"},[t("span",{class:"vxe-table--cell-main-area"},b.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"},u)])])},methods:{scrollEvent:function(e){var l=this.$el,t=this.$parent,r=this.fixedType,o=t.$refs,n=t.elemStore,i=t.highlightHoverRow,a=t.scrollXLoad,s=t.scrollYLoad,c=t.lastScrollTop,d=t.lastScrollLeft,u=t.rowOpts,p=o.tableHeader,f=o.tableBody,y=o.leftBody,h=o.rightBody,g=o.tableFooter,o=o.validTip,p=p?p.$el:null,g=g?g.$el:null,f=f.$el,y=y?y.$el:null,h=h?h.$el:null,v=n["main-body-ySpace"],n=n["main-body-xSpace"],v=(s&&v?v:f).clientHeight,n=(a&&n?n:f).clientWidth,l=l.scrollTop,m=f.scrollLeft,d=m!==d,c=l!==c;t.lastScrollTop=l,t.lastScrollLeft=m,t.lastScrollTime=Date.now(),(u.isHover||i)&&t.clearHoverRow(),y&&"left"===r?syncBodyScroll(t,r,l=y.scrollTop,f,h):h&&"right"===r?syncBodyScroll(t,r,l=h.scrollTop,f,y):(d&&(p&&(p.scrollLeft=f.scrollLeft),g)&&(g.scrollLeft=f.scrollLeft),(y||h)&&(t.checkScrolling(),c)&&syncBodyScroll(t,r,l,y,h)),a&&d&&t.triggerScrollXEvent(e),s&&c&&t.triggerScrollYEvent(e),d&&o&&o.visible&&o.updatePlacement(),t.emitEvent("scroll",{type:renderType,fixed:r,scrollTop:l,scrollLeft:m,scrollHeight:f.scrollHeight,scrollWidth:f.scrollWidth,bodyHeight:v,bodyWidth:n,isX:d,isY:c},e)},handleWheel:function(a,s,e,c,d){var u=this,p=this.$parent,l=p.$refs,t=p.elemStore,r=p.scrollYLoad,o=p.scrollXLoad,n=l.tableBody,i=l.leftBody,l=l.rightBody,f=n.$el,y=i?i.$el:null,h=l?l.$el:null,n=this.isPrevWheelTop===s?Math.max(0,this.wheelYSize-this.wheelYTotal):0,i=t["main-body-ySpace"],l=t["main-body-xSpace"],g=(r&&i?i:f).clientHeight,v=(o&&l?l:f).clientWidth;this.isPrevWheelTop=s,this.wheelYSize=Math.abs(s?e-n:e+n),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),n=f.scrollTop,l=f.clientHeight,t=f.scrollHeight,f.scrollTop=n=n+i*(s?-1:1),y&&(y.scrollTop=n),h&&(h.scrollTop=n),(s?n<t-l:0<=n)&&(u.wheelTime=setTimeout(e,10)),u.wheelYTotal=o,u.wheelYInterval=i,p.emitEvent("scroll",{type:renderType,fixed:r,scrollTop:f.scrollTop,scrollLeft:f.scrollLeft,scrollHeight:f.scrollHeight,scrollWidth:f.scrollWidth,bodyHeight:g,bodyWidth:v,isX:c,isY:d},a))}()},wheelEvent:function(e){var l=e.deltaY,t=e.deltaX,r=this.$el,o=this.$parent,n=o.$refs,i=o.highlightHoverRow,a=o.scrollYLoad,s=o.lastScrollTop,c=o.lastScrollLeft,d=o.rowOpts,n=n.tableBody.$el,u=l<0;(u?r.scrollTop<=0:r.scrollTop>=r.scrollHeight-r.clientHeight)||(r=r.scrollTop+l,t=(n=n.scrollLeft+t)!==c,(c=r!==s)&&(e.preventDefault(),o.lastScrollTop=r,o.lastScrollLeft=n,o.lastScrollTime=Date.now(),(d.isHover||i)&&o.clearHoverRow(),this.handleWheel(e,u,l,t,c),a)&&o.triggerScrollYEvent(e))}}};exports.default=_default;
|
|
1
|
+
"use strict";function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}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")),_utils=_interopRequireWildcard(require("../../tools/utils")),_util=require("./util"),_dom=_interopRequireDefault(require("../../tools/dom")),_vn=require("../../tools/vn");function _getRequireWildcardCache(e){var l,t;return"function"!=typeof WeakMap?null:(l=new WeakMap,t=new WeakMap,(_getRequireWildcardCache=function(e){return e?t:l})(e))}function _interopRequireWildcard(e,l){if(!l&&e&&e.__esModule)return e;if(null===e||"object"!==_typeof(e)&&"function"!=typeof e)return{default:e};l=_getRequireWildcardCache(l);if(l&&l.has(e))return l.get(e);var t,r,o={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(t in e)"default"!==t&&Object.prototype.hasOwnProperty.call(e,t)&&((r=n?Object.getOwnPropertyDescriptor(e,t):null)&&(r.get||r.set)?Object.defineProperty(o,t,r):o[t]=e[t]);return o.default=e,l&&l.set(e,o),o}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){var t;if(e)return"string"==typeof e?_arrayLikeToArray(e,l):"Map"===(t="Object"===(t=Object.prototype.toString.call(e).slice(8,-1))&&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,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){var o=r.row,n=r.column,i=t.treeOpts,a=t.treeConfig,s=t.fullAllDataRowIdData,c=n.slots,n=n.treeNode,s=s[(0,_util.getRowid)(t,o)],o=0,d=0,u=[];return s&&(o=s.level,d=s._index,u=s.items),c&&c.line?t.callSlot(c.line,r,e):a&&n&&i.line?[e("div",{class:"vxe-tree--line-wrapper"},[e("div",{class:"vxe-tree--line",style:{height:"".concat((0,_util.calcTreeLine)(r,u,d),"px"),left:"".concat(o*i.indent+(o?2-(0,_util.getOffsetSize)(t):0)+16,"px")}})])]:[]}function renderColumn(e,P,l,t,r,o,n,i,a,s,W,c,d,D,u){var M,p=l.$listeners,f=l.afterFullData,y=l.tableData,h=l.height,q=l.columnKey,g=l.overflowX,v=l.sYOpts,B=l.scrollXLoad,U=l.scrollYLoad,j=l.highlightCurrentRow,X=l.showOverflow,N=l.isAllOverflow,m=l.align,F=l.currentColumn,z=l.cellClassName,w=l.cellStyle,x=l.mergeList,V=l.spanMethod,K=l.radioOpts,G=l.checkboxOpts,J=l.expandOpts,Q=l.treeOpts,b=l.tooltipOpts,Z=l.mouseConfig,_=l.editConfig,T=l.editOpts,ee=l.editRules,S=l.validOpts,le=l.editStore,O=l.validStore,te=l.tooltipConfig,re=l.rowOpts,oe=l.columnOpts,ne=c.type,ie=c.cellRender,C=c.editRender,ae=c.align,$=c.showOverflow,se=c.className,ce=c.treeNode,le=le.actived,v=v.rHeight,L=re.height,R=C||ie,R=R?_vXETable.default.renderer.get(R.name):null,de=R?R.cellClassName:"",R=R?R.cellStyle:"",k=b.showAll||b.enabled,b=l.getColumnIndex(c),ue=l.getVTColumnIndex(c),pe=(0,_utils.isEnableConf)(C),g=o?c.fixed!==o:c.fixed&&g,$=_xeUtils.default.isUndefined($)||_xeUtils.default.isNull($)?X:$,I="ellipsis"===$,H="title"===$,E=!0===$||"tooltip"===$,$=H||E||I,A={},ae=ae||m,m=O.row===i&&O.column===c,ee=ee&&S.showMessage&&("default"===S.message?h||1<y.length:"inline"===S.message),h={colid:c.id},fe=p["cell-mouseenter"],ye=p["cell-mouseleave"],S=C&&_&&"dblclick"===T.trigger,Y={$table:l,$grid:l.$xegrid,seq:t,rowid:r,row:i,rowIndex:a,$rowIndex:s,_rowIndex:W,column:c,columnIndex:b,$columnIndex:d,_columnIndex:ue,fixed:o,type:renderType,isHidden:g,level:n,visibleData:f,data:y,items:u};if(!B&&!U||$||(I=$=!0),(H||E||k||fe||te)&&(A.mouseenter=function(e){isOperateMouse(l)||(H?_dom.default.updateCellTitle(e.currentTarget,c):(E||k)&&l.triggerBodyTooltipEvent(e,Y),fe&&l.emitEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},Y),e))}),(E||k||ye||te)&&(A.mouseleave=function(e){isOperateMouse(l)||((E||k)&&l.handleTargetLeaveEvent(e),ye&&l.emitEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},Y),e))}),(G.range||Z)&&(A.mousedown=function(e){l.triggerCellMousedownEvent(e,Y)}),(re.isCurrent||j||p["cell-click"]||C&&_||"row"===J.trigger||"cell"===J.trigger||"row"===K.trigger||"radio"===c.type&&"cell"===K.trigger||"row"===G.trigger||"checkbox"===c.type&&"cell"===G.trigger||"row"===Q.trigger||c.treeNode&&"cell"===Q.trigger)&&(A.click=function(e){l.triggerCellClickEvent(e,Y)}),(S||p["cell-dblclick"])&&(A.dblclick=function(e){l.triggerCellDblclickEvent(e,Y)}),x.length){t=(0,_util.mergeBodyMethod)(x,W,ue);if(t){r=t.rowspan,a=t.colspan;if(!r||!a)return null;1<r&&(h.rowspan=r),1<a&&(h.colspan=a)}}else if(V){s=V(Y)||{},b=s.rowspan,o=void 0===b?1:b,n=s.colspan,f=void 0===n?1:n;if(!o||!f)return null;1<o&&(h.rowspan=o),1<f&&(h.colspan=f)}!(g=g&&x&&(1<h.colspan||1<h.rowspan)?!1:g)&&_&&(C||ie)&&(T.showStatus||T.showUpdateStatus)&&(M=l.isUpdateByRow(i,c.field));y=[];return g&&X&&N?y.push(e("div",{class:["vxe-cell",{"c--title":H,"c--tooltip":E,"c--ellipsis":I}],style:{maxHeight:$&&(v||L)?"".concat(v||L,"px"):""}})):(y.push.apply(y,_toConsumableArray(renderLine(e,P,l,Y)).concat([e("div",{class:["vxe-cell",{"c--title":H,"c--tooltip":E,"c--ellipsis":I}],style:{maxHeight:$&&(v||L)?"".concat(v||L,"px"):""},attrs:{title:H?l.getCellLabel(i,c):null}},c.renderCell(e,Y))])),ee&&m&&y.push(e("div",{class:"vxe-cell--valid",style:O.rule&&O.rule.maxWidth?{width:"".concat(O.rule.maxWidth,"px")}:null},[e("span",{class:"vxe-cell--valid-msg"},O.content)]))),e("td",{class:["vxe-body--column",c.id,(_defineProperty(u={},"col--".concat(ae),ae),_defineProperty(u,"col--".concat(ne),ne),_defineProperty(u,"col--last",d===D.length-1),_defineProperty(u,"col--tree-node",ce),_defineProperty(u,"col--edit",pe),_defineProperty(u,"col--ellipsis",$),_defineProperty(u,"fixed--hidden",g),_defineProperty(u,"col--dirty",M),_defineProperty(u,"col--actived",_&&pe&&le.row===i&&(le.column===c||"row"===T.mode)),_defineProperty(u,"col--valid-error",m),_defineProperty(u,"col--current",F===c),u),_utils.default.getClass(de,Y),_utils.default.getClass(se,Y),_utils.default.getClass(z,Y)],key:q||oe.useKey?c.id:d,attrs:h,style:Object.assign({height:$&&(v||L)?"".concat(v||L,"px"):""},_xeUtils.default.isFunction(R)?R(Y):R,_xeUtils.default.isFunction(w)?w(Y):w),on:A},y)}function renderRows(y,h,g,v,m,w){var x=g.stripe,b=g.rowKey,_=g.highlightHoverRow,T=g.rowClassName,S=g.rowStyle,O=g.editConfig,C=g.showOverflow,$=g.treeConfig,L=g.treeOpts,R=g.expandOpts,k=g.editOpts,I=g.treeExpandeds,H=g.scrollYLoad,E=g.rowExpandeds,A=g.radioOpts,Y=g.checkboxOpts,P=g.expandColumn,W=g.hasFixedColumn,D=g.fullAllDataRowIdData,M=g.rowOpts,q=[];return m.forEach(function(t,r){var e,l={},o=g.getVTRowIndex(t),n=g.getRowIndex(t),i=((M.isHover||_)&&(l.mouseenter=function(e){isOperateMouse(g)||g.triggerHoverEvent(e,{row:t,rowIndex:n})},l.mouseleave=function(){isOperateMouse(g)||g.clearHoverRow()}),(0,_util.getRowid)(g,t)),a=D[i],s=a?a.level:0,c=a?a.seq:-1,a={$table:g,seq:c,rowid:i,fixed:v,type:renderType,level:s,row:t,rowIndex:n,$rowIndex:r},d=P&&E.length&&-1<E.indexOf(t),u=!1,p=[],f=!1;O&&(f=g.isInsertByRow(t)),$&&!H&&!L.transform&&I.length&&(u=(p=t[L.children])&&p.length&&-1<I.indexOf(t)),q.push(y("tr",{class:["vxe-body--row",$?"row--level-".concat(s):"",{"row--stripe":x&&(g.getVTRowIndex(t)+1)%2==0,"is--new":f,"is--expand-row":d,"is--expand-tree":u,"row--new":f&&(k.showStatus||k.showInsertStatus),"row--radio":A.highlight&&g.selectRow===t,"row--checked":Y.highlight&&g.isCheckedByCheckboxRow(t)},T?_xeUtils.default.isFunction(T)?T(a):T:""],attrs:{rowid:i},style:S?_xeUtils.default.isFunction(S)?S(a):S:null,key:b||M.useKey||$?i:r,on:l},w.map(function(e,l){return renderColumn(y,h,g,c,i,v,s,t,n,r,o,e,l,w,m)}))),d&&(f={},(a=R.height)&&(f.height="".concat(a,"px")),$&&(f.paddingLeft="".concat(s*L.indent+30,"px")),d=P.showOverflow,d=_xeUtils.default.isUndefined(d)||_xeUtils.default.isNull(d)?C:d,e={$table:g,seq:c,column:P,fixed:v,type:renderType,level:s,row:t,rowIndex:n,$rowIndex:r},q.push(y("tr",{class:"vxe-body--expanded-row",key:"expand_".concat(i),style:S?_xeUtils.default.isFunction(S)?S(e):S:null,on:l},[y("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":v&&!W,"col--ellipsis":d},attrs:{colspan:w.length}},[y("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":a},style:f},[P.renderData(y,e)])])]))),u&&q.push.apply(q,_toConsumableArray(renderRows(y,h,g,v,p,w)))}),q}function syncBodyScroll(e,l,t,r,o){(r||o)&&(r&&((0,_util.removeScrollListener)(r),r.scrollTop=t),o&&((0,_util.removeScrollListener)(o),o.scrollTop=t),clearTimeout(scrollProcessTimeout),scrollProcessTimeout=setTimeout(function(){(0,_util.restoreScrollListener)(r),(0,_util.restoreScrollListener)(o)},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},destroyed:function(){var e=this.$parent,l=this.fixedType,e=e.elemStore,l="".concat(l||"main","-body-");e["".concat(l,"wrapper")]=null,e["".concat(l,"table")]=null,e["".concat(l,"colgroup")]=null,e["".concat(l,"list")]=null,e["".concat(l,"xSpace")]=null,e["".concat(l,"ySpace")]=null,e["".concat(l,"emptyBlock")]=null},render:function(t){var e=this._e,l=this.$parent,r=this.fixedColumn,o=this.fixedType,n=l.$scopedSlots,i=l.tId,a=l.tableData,s=l.tableColumn,c=l.visibleColumn,d=l.expandColumn,u=l.showOverflow,p=l.keyboardConfig,f=l.keyboardOpts,y=l.mergeList,h=l.spanMethod,g=l.scrollXLoad,v=l.scrollYLoad,m=l.isAllOverflow,w=l.emptyOpts,x=l.mouseConfig,b=l.mouseOpts,_=l.sYOpts;return o&&(s=d||!(g||v||u&&m)||y.length||h||p&&f.isMerge?c:r),u=n.empty?n.empty.call(this,{$table:l},t):(g=(d=w.name?_vXETable.default.renderer.get(w.name):null)?d.renderEmpty:null)?(0,_vn.getSlotVNs)(g.call(this,t,w,{$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"===_.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"},s.map(function(e,l){return t("col",{attrs:{name:e.id},key:l})})),t("tbody",{ref:"tbody"},renderRows(t,this,l,o,a,s))]),t("div",{class:"vxe-table--checkbox-range"}),x&&b.area?t("div",{class:"vxe-table--cell-area"},[t("span",{class:"vxe-table--cell-main-area"},b.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"},u)])])},methods:{scrollEvent:function(e){var l=this.$el,t=this.$parent,r=this.fixedType,o=t.$refs,n=t.elemStore,i=t.highlightHoverRow,a=t.scrollXLoad,s=t.scrollYLoad,c=t.lastScrollTop,d=t.lastScrollLeft,u=t.rowOpts,p=o.tableHeader,f=o.tableBody,y=o.leftBody,h=o.rightBody,g=o.tableFooter,o=o.validTip,p=p?p.$el:null,g=g?g.$el:null,f=f.$el,y=y?y.$el:null,h=h?h.$el:null,v=n["main-body-ySpace"],n=n["main-body-xSpace"],v=(s&&v?v:f).clientHeight,n=(a&&n?n:f).clientWidth,l=l.scrollTop,m=f.scrollLeft,d=m!==d,c=l!==c;t.lastScrollTop=l,t.lastScrollLeft=m,t.lastScrollTime=Date.now(),(u.isHover||i)&&t.clearHoverRow(),y&&"left"===r?syncBodyScroll(t,r,l=y.scrollTop,f,h):h&&"right"===r?syncBodyScroll(t,r,l=h.scrollTop,f,y):(d&&(p&&(p.scrollLeft=f.scrollLeft),g)&&(g.scrollLeft=f.scrollLeft),(y||h)&&(t.checkScrolling(),c)&&syncBodyScroll(t,r,l,y,h)),a&&d&&t.triggerScrollXEvent(e),s&&c&&t.triggerScrollYEvent(e),d&&o&&o.visible&&o.updatePlacement(),t.emitEvent("scroll",{type:renderType,fixed:r,scrollTop:l,scrollLeft:m,scrollHeight:f.scrollHeight,scrollWidth:f.scrollWidth,bodyHeight:v,bodyWidth:n,isX:d,isY:c},e)},handleWheel:function(a,s,e,c,d){var u=this,p=this.$parent,l=p.$refs,t=p.elemStore,r=p.scrollYLoad,o=p.scrollXLoad,n=l.tableBody,i=l.leftBody,l=l.rightBody,f=n.$el,y=i?i.$el:null,h=l?l.$el:null,n=this.isPrevWheelTop===s?Math.max(0,this.wheelYSize-this.wheelYTotal):0,i=t["main-body-ySpace"],l=t["main-body-xSpace"],g=(r&&i?i:f).clientHeight,v=(o&&l?l:f).clientWidth;this.isPrevWheelTop=s,this.wheelYSize=Math.abs(s?e-n:e+n),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),n=f.scrollTop,l=f.clientHeight,t=f.scrollHeight,f.scrollTop=n=n+i*(s?-1:1),y&&(y.scrollTop=n),h&&(h.scrollTop=n),(s?n<t-l:0<=n)&&(u.wheelTime=setTimeout(e,10)),u.wheelYTotal=o,u.wheelYInterval=i,p.emitEvent("scroll",{type:renderType,fixed:r,scrollTop:f.scrollTop,scrollLeft:f.scrollLeft,scrollHeight:f.scrollHeight,scrollWidth:f.scrollWidth,bodyHeight:g,bodyWidth:v,isX:c,isY:d},a))}()},wheelEvent:function(e){var l=e.deltaY,t=e.deltaX,r=this.$el,o=this.$parent,n=o.$refs,i=o.highlightHoverRow,a=o.scrollYLoad,s=o.lastScrollTop,c=o.lastScrollLeft,d=o.rowOpts,n=n.tableBody.$el,u=l<0;(u?r.scrollTop<=0:r.scrollTop>=r.scrollHeight-r.clientHeight)||(r=r.scrollTop+l,t=(n=n.scrollLeft+t)!==c,(c=r!==s)&&(e.preventDefault(),o.lastScrollTop=r,o.lastScrollLeft=n,o.lastScrollTime=Date.now(),(d.isHover||i)&&o.clearHoverRow(),this.handleWheel(e,u,l,t,c),a)&&o.triggerScrollYEvent(e))}}};exports.default=_default;
|
package/lib/table/src/methods.js
CHANGED
|
@@ -405,8 +405,9 @@ var Methods = {
|
|
|
405
405
|
treeOpts = this.treeOpts,
|
|
406
406
|
sYOpts = this.sYOpts;
|
|
407
407
|
var transform = treeOpts.transform;
|
|
408
|
+
var allList = fullData || this.tableFullData;
|
|
408
409
|
// 如果gt为0,则总是启用
|
|
409
|
-
var scrollYLoad = (transform || !treeConfig) && !!sYOpts.enabled && sYOpts.gt > -1 && (sYOpts.gt === 0 || sYOpts.gt <=
|
|
410
|
+
var scrollYLoad = (transform || !treeConfig) && !!sYOpts.enabled && sYOpts.gt > -1 && (sYOpts.gt === 0 || sYOpts.gt <= allList.length);
|
|
410
411
|
this.scrollYLoad = scrollYLoad;
|
|
411
412
|
return scrollYLoad;
|
|
412
413
|
},
|
|
@@ -470,7 +471,9 @@ var Methods = {
|
|
|
470
471
|
scrollXStore.startIndex = 0;
|
|
471
472
|
scrollXStore.endIndex = 1;
|
|
472
473
|
editStore.insertList = [];
|
|
474
|
+
editStore.insertMaps = {};
|
|
473
475
|
editStore.removeList = [];
|
|
476
|
+
editStore.removeMaps = {};
|
|
474
477
|
var sYLoad = this.updateScrollYStatus(fullData);
|
|
475
478
|
this.scrollYLoad = sYLoad;
|
|
476
479
|
// 全量数据
|
|
@@ -784,7 +787,9 @@ var Methods = {
|
|
|
784
787
|
var tableFullColumn = this.tableFullColumn,
|
|
785
788
|
collectColumn = this.collectColumn,
|
|
786
789
|
fullColumnMap = this.fullColumnMap,
|
|
787
|
-
showOverflow = this.showOverflow
|
|
790
|
+
showOverflow = this.showOverflow,
|
|
791
|
+
columnOpts = this.columnOpts,
|
|
792
|
+
rowOpts = this.rowOpts;
|
|
788
793
|
var fullColumnIdData = this.fullColumnIdData = {};
|
|
789
794
|
var fullColumnFieldData = this.fullColumnFieldData = {};
|
|
790
795
|
var isGroup = collectColumn.some(hasChildrenList);
|
|
@@ -793,6 +798,7 @@ var Methods = {
|
|
|
793
798
|
var treeNodeColumn;
|
|
794
799
|
var checkboxColumn;
|
|
795
800
|
var radioColumn;
|
|
801
|
+
var htmlColumn;
|
|
796
802
|
var hasFixed;
|
|
797
803
|
var handleFunc = function handleFunc(column, index, items, path, parent) {
|
|
798
804
|
var colid = column.id,
|
|
@@ -818,6 +824,9 @@ var Methods = {
|
|
|
818
824
|
if (!hasFixed && fixed) {
|
|
819
825
|
hasFixed = fixed;
|
|
820
826
|
}
|
|
827
|
+
if (!htmlColumn && type === 'html') {
|
|
828
|
+
htmlColumn = column;
|
|
829
|
+
}
|
|
821
830
|
if (treeNode) {
|
|
822
831
|
if (process.env.NODE_ENV === 'development') {
|
|
823
832
|
if (treeNodeColumn) {
|
|
@@ -865,6 +874,16 @@ var Methods = {
|
|
|
865
874
|
(0, _log.warnLog)('vxe.error.errConflicts', ["table.show-footer-overflow=".concat(_this12.showFooterOverflow), "column.show-footer-overflow=".concat(column.showFooterOverflow)]);
|
|
866
875
|
}
|
|
867
876
|
}
|
|
877
|
+
if (process.env.NODE_ENV === 'development') {
|
|
878
|
+
if (htmlColumn) {
|
|
879
|
+
if (!columnOpts.useKey) {
|
|
880
|
+
(0, _log.errLog)('vxe.error.reqProp', ['column-config.useKey', 'column.type=html']);
|
|
881
|
+
}
|
|
882
|
+
if (!rowOpts.useKey) {
|
|
883
|
+
(0, _log.errLog)('vxe.error.reqProp', ['row-config.useKey', 'column.type=html']);
|
|
884
|
+
}
|
|
885
|
+
}
|
|
886
|
+
}
|
|
868
887
|
if (isAllOverflow && column.showOverflow === false) {
|
|
869
888
|
isAllOverflow = false;
|
|
870
889
|
}
|
|
@@ -1029,47 +1048,53 @@ var Methods = {
|
|
|
1029
1048
|
},
|
|
1030
1049
|
/**
|
|
1031
1050
|
* 定义行数据中的列属性,如果不存在则定义
|
|
1032
|
-
* @param {Row}
|
|
1051
|
+
* @param {Row} records 行数据
|
|
1033
1052
|
*/
|
|
1034
|
-
defineField: function defineField(
|
|
1053
|
+
defineField: function defineField(records) {
|
|
1054
|
+
var _this13 = this;
|
|
1035
1055
|
var radioOpts = this.radioOpts,
|
|
1036
1056
|
checkboxOpts = this.checkboxOpts,
|
|
1037
1057
|
treeConfig = this.treeConfig,
|
|
1038
1058
|
treeOpts = this.treeOpts,
|
|
1039
1059
|
expandOpts = this.expandOpts;
|
|
1040
1060
|
var rowkey = (0, _util.getRowkey)(this);
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1061
|
+
if (!_xeUtils["default"].isArray(records)) {
|
|
1062
|
+
records = [records || {}];
|
|
1063
|
+
}
|
|
1064
|
+
return records.map(function (record) {
|
|
1065
|
+
_this13.tableFullColumn.forEach(function (column) {
|
|
1066
|
+
var field = column.field,
|
|
1067
|
+
editRender = column.editRender;
|
|
1068
|
+
if (field && !_xeUtils["default"].has(record, field)) {
|
|
1069
|
+
var cellValue = null;
|
|
1070
|
+
if (editRender) {
|
|
1071
|
+
var defaultValue = editRender.defaultValue;
|
|
1072
|
+
if (_xeUtils["default"].isFunction(defaultValue)) {
|
|
1073
|
+
cellValue = defaultValue({
|
|
1074
|
+
column: column
|
|
1075
|
+
});
|
|
1076
|
+
} else if (!_xeUtils["default"].isUndefined(defaultValue)) {
|
|
1077
|
+
cellValue = defaultValue;
|
|
1078
|
+
}
|
|
1054
1079
|
}
|
|
1080
|
+
_xeUtils["default"].set(record, field, cellValue);
|
|
1081
|
+
}
|
|
1082
|
+
});
|
|
1083
|
+
var otherFields = [radioOpts.labelField, checkboxOpts.checkField, checkboxOpts.labelField, expandOpts.labelField];
|
|
1084
|
+
otherFields.forEach(function (key) {
|
|
1085
|
+
if (key && (0, _utils.eqEmptyValue)(_xeUtils["default"].get(record, key))) {
|
|
1086
|
+
_xeUtils["default"].set(record, key, null);
|
|
1055
1087
|
}
|
|
1056
|
-
|
|
1088
|
+
});
|
|
1089
|
+
if (treeConfig && treeOpts.lazy && _xeUtils["default"].isUndefined(record[treeOpts.children])) {
|
|
1090
|
+
record[treeOpts.children] = null;
|
|
1057
1091
|
}
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
if (key && (0, _utils.eqEmptyValue)(_xeUtils["default"].get(record, key))) {
|
|
1062
|
-
_xeUtils["default"].set(record, key, null);
|
|
1092
|
+
// 必须有行数据的唯一主键,可以自行设置;也可以默认生成一个随机数
|
|
1093
|
+
if ((0, _utils.eqEmptyValue)(_xeUtils["default"].get(record, rowkey))) {
|
|
1094
|
+
_xeUtils["default"].set(record, rowkey, getRowUniqueId());
|
|
1063
1095
|
}
|
|
1096
|
+
return record;
|
|
1064
1097
|
});
|
|
1065
|
-
if (treeConfig && treeOpts.lazy && _xeUtils["default"].isUndefined(record[treeOpts.children])) {
|
|
1066
|
-
record[treeOpts.children] = null;
|
|
1067
|
-
}
|
|
1068
|
-
// 必须有行数据的唯一主键,可以自行设置;也可以默认生成一个随机数
|
|
1069
|
-
if ((0, _utils.eqEmptyValue)(_xeUtils["default"].get(record, rowkey))) {
|
|
1070
|
-
_xeUtils["default"].set(record, rowkey, getRowUniqueId());
|
|
1071
|
-
}
|
|
1072
|
-
return record;
|
|
1073
1098
|
},
|
|
1074
1099
|
/**
|
|
1075
1100
|
* 创建 data 对象
|
|
@@ -1077,15 +1102,9 @@ var Methods = {
|
|
|
1077
1102
|
* @param {Array} records 新数据
|
|
1078
1103
|
*/
|
|
1079
1104
|
createData: function createData(records) {
|
|
1080
|
-
var
|
|
1081
|
-
var treeConfig = this.treeConfig,
|
|
1082
|
-
treeOpts = this.treeOpts;
|
|
1083
|
-
var handleRrecord = function handleRrecord(record) {
|
|
1084
|
-
return _this13.defineField(Object.assign({}, record));
|
|
1085
|
-
};
|
|
1086
|
-
var rows = treeConfig ? _xeUtils["default"].mapTree(records, handleRrecord, treeOpts) : records.map(handleRrecord);
|
|
1105
|
+
var _this14 = this;
|
|
1087
1106
|
return this.$nextTick().then(function () {
|
|
1088
|
-
return
|
|
1107
|
+
return _this14.defineField(records);
|
|
1089
1108
|
});
|
|
1090
1109
|
},
|
|
1091
1110
|
/**
|
|
@@ -1094,15 +1113,12 @@ var Methods = {
|
|
|
1094
1113
|
* @param {Array/Object} records 新数据
|
|
1095
1114
|
*/
|
|
1096
1115
|
createRow: function createRow(records) {
|
|
1097
|
-
var _this14 = this;
|
|
1098
1116
|
var isArr = _xeUtils["default"].isArray(records);
|
|
1099
1117
|
if (!isArr) {
|
|
1100
1118
|
records = [records];
|
|
1101
1119
|
}
|
|
1102
|
-
return this
|
|
1103
|
-
return
|
|
1104
|
-
return isArr ? rows : rows[0];
|
|
1105
|
-
});
|
|
1120
|
+
return this.createData(records).then(function (rows) {
|
|
1121
|
+
return isArr ? rows : rows[0];
|
|
1106
1122
|
});
|
|
1107
1123
|
},
|
|
1108
1124
|
/**
|
|
@@ -1191,7 +1207,9 @@ var Methods = {
|
|
|
1191
1207
|
* @param {Row} row 行对象
|
|
1192
1208
|
*/
|
|
1193
1209
|
isInsertByRow: function isInsertByRow(row) {
|
|
1194
|
-
|
|
1210
|
+
var editStore = this.editStore;
|
|
1211
|
+
var rowid = (0, _util.getRowid)(this, row);
|
|
1212
|
+
return editStore.insertList.length && editStore.insertMaps[rowid];
|
|
1195
1213
|
},
|
|
1196
1214
|
/**
|
|
1197
1215
|
* 删除所有新增的临时数据
|
|
@@ -4490,7 +4508,7 @@ var Methods = {
|
|
|
4490
4508
|
* 判断指定列是否为筛选状态,如果为空则判断所有列
|
|
4491
4509
|
* @param {String} fieldOrColumn 字段名
|
|
4492
4510
|
*/
|
|
4493
|
-
|
|
4511
|
+
isActiveFilterByColumn: function isActiveFilterByColumn(fieldOrColumn) {
|
|
4494
4512
|
var column = (0, _util.handleFieldOrColumn)(this, fieldOrColumn);
|
|
4495
4513
|
if (column) {
|
|
4496
4514
|
return column.filters && column.filters.some(function (option) {
|
|
@@ -4499,6 +4517,10 @@ var Methods = {
|
|
|
4499
4517
|
}
|
|
4500
4518
|
return this.getCheckedFilters().length > 0;
|
|
4501
4519
|
},
|
|
4520
|
+
// 已废弃
|
|
4521
|
+
isFilter: function isFilter(fieldOrColumn) {
|
|
4522
|
+
return this.isActiveFilterByColumn(fieldOrColumn);
|
|
4523
|
+
},
|
|
4502
4524
|
/**
|
|
4503
4525
|
* 判断展开行是否懒加载完成
|
|
4504
4526
|
* @param {Row} row 行对象
|