vxe-table 3.11.31 → 3.11.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/index.css +1 -1
- package/es/index.min.css +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/module/custom/panel.js +7 -6
- package/es/table/module/keyboard/mixin.js +1 -26
- package/es/table/src/body.js +21 -5
- package/es/table/src/cell.js +23 -19
- package/es/table/src/footer.js +4 -2
- package/es/table/src/header.js +40 -28
- package/es/table/src/methods.js +77 -4
- package/es/table/src/table.js +3 -1
- package/es/table/style.css +36 -0
- package/es/table/style.min.css +1 -1
- package/es/ui/index.js +5 -3
- package/es/ui/src/log.js +1 -1
- package/es/vxe-table/style.css +36 -0
- package/es/vxe-table/style.min.css +1 -1
- package/lib/index.css +1 -1
- package/lib/index.min.css +1 -1
- package/lib/index.umd.js +200 -111
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/module/custom/panel.js +7 -14
- package/lib/table/module/custom/panel.min.js +1 -1
- package/lib/table/module/keyboard/mixin.js +0 -32
- package/lib/table/module/keyboard/mixin.min.js +1 -1
- package/lib/table/src/body.js +21 -5
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/cell.js +23 -17
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/footer.js +4 -2
- package/lib/table/src/footer.min.js +1 -1
- package/lib/table/src/header.js +42 -34
- package/lib/table/src/header.min.js +1 -1
- package/lib/table/src/methods.js +94 -2
- 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/table/style/style.css +36 -0
- package/lib/table/style/style.min.css +1 -1
- package/lib/ui/index.js +5 -3
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/vxe-table/style/style.css +36 -0
- package/lib/vxe-table/style/style.min.css +1 -1
- package/package.json +2 -2
- package/packages/table/module/custom/panel.ts +9 -6
- package/packages/table/module/keyboard/mixin.ts +1 -26
- package/packages/table/src/body.ts +21 -5
- package/packages/table/src/cell.ts +23 -19
- package/packages/table/src/footer.ts +6 -2
- package/packages/table/src/header.ts +43 -28
- package/packages/table/src/methods.ts +79 -4
- package/packages/table/src/table.ts +3 -1
- package/packages/ui/index.ts +4 -2
- package/styles/components/table.scss +36 -0
- /package/es/{iconfont.1734190867802.ttf → iconfont.1734402738434.ttf} +0 -0
- /package/es/{iconfont.1734190867802.woff → iconfont.1734402738434.woff} +0 -0
- /package/es/{iconfont.1734190867802.woff2 → iconfont.1734402738434.woff2} +0 -0
- /package/lib/{iconfont.1734190867802.ttf → iconfont.1734402738434.ttf} +0 -0
- /package/lib/{iconfont.1734190867802.woff → iconfont.1734402738434.woff} +0 -0
- /package/lib/{iconfont.1734190867802.woff2 → iconfont.1734402738434.woff2} +0 -0
package/lib/table/src/header.js
CHANGED
|
@@ -15,12 +15,12 @@ const {
|
|
|
15
15
|
} = _ui.VxeUI;
|
|
16
16
|
const cellType = 'header';
|
|
17
17
|
const renderRows = (h, _vm, cols, $rowIndex) => {
|
|
18
|
+
const $xeTable = _vm.$parent;
|
|
19
|
+
const $xeGrid = $xeTable.xegrid;
|
|
18
20
|
const {
|
|
19
|
-
$parent: $xetable,
|
|
20
21
|
fixedType
|
|
21
22
|
} = _vm;
|
|
22
23
|
const {
|
|
23
|
-
$listeners: tableListeners,
|
|
24
24
|
resizable: allResizable,
|
|
25
25
|
border,
|
|
26
26
|
columnKey,
|
|
@@ -29,15 +29,17 @@ const renderRows = (h, _vm, cols, $rowIndex) => {
|
|
|
29
29
|
showHeaderOverflow: allColumnHeaderOverflow,
|
|
30
30
|
headerAlign: allHeaderAlign,
|
|
31
31
|
align: allAlign,
|
|
32
|
-
highlightCurrentColumn,
|
|
33
32
|
currentColumn,
|
|
34
33
|
scrollXLoad,
|
|
35
34
|
overflowX,
|
|
36
35
|
scrollbarWidth,
|
|
37
|
-
sortOpts,
|
|
38
36
|
mouseConfig,
|
|
39
37
|
columnOpts
|
|
40
|
-
} = $
|
|
38
|
+
} = $xeTable;
|
|
39
|
+
const columnDragOpts = $xeTable.computeColumnDragOpts;
|
|
40
|
+
const {
|
|
41
|
+
disabledMethod: dragDisabledMethod
|
|
42
|
+
} = columnDragOpts;
|
|
41
43
|
return cols.map((column, $columnIndex) => {
|
|
42
44
|
const {
|
|
43
45
|
type,
|
|
@@ -60,13 +62,12 @@ const renderRows = (h, _vm, cols, $rowIndex) => {
|
|
|
60
62
|
const showTitle = headOverflow === 'title';
|
|
61
63
|
const showTooltip = headOverflow === true || headOverflow === 'tooltip';
|
|
62
64
|
let hasEllipsis = showTitle || showTooltip || showEllipsis;
|
|
63
|
-
const thOns = {};
|
|
64
65
|
const hasFilter = column.filters && column.filters.some(item => item.checked);
|
|
65
|
-
const columnIndex = $
|
|
66
|
-
const _columnIndex = $
|
|
66
|
+
const columnIndex = $xeTable.getColumnIndex(column);
|
|
67
|
+
const _columnIndex = $xeTable.getVTColumnIndex(column);
|
|
67
68
|
const params = {
|
|
68
|
-
$table: $
|
|
69
|
-
$grid: $
|
|
69
|
+
$table: $xeTable,
|
|
70
|
+
$grid: $xeGrid,
|
|
70
71
|
$rowIndex,
|
|
71
72
|
column,
|
|
72
73
|
columnIndex,
|
|
@@ -77,25 +78,36 @@ const renderRows = (h, _vm, cols, $rowIndex) => {
|
|
|
77
78
|
isHidden: fixedHiddenColumn,
|
|
78
79
|
hasFilter
|
|
79
80
|
};
|
|
81
|
+
const thAttrs = {
|
|
82
|
+
colid,
|
|
83
|
+
colspan: column.colSpan > 1 ? column.colSpan : null,
|
|
84
|
+
rowspan: column.rowSpan > 1 ? column.rowSpan : null
|
|
85
|
+
};
|
|
86
|
+
const thOns = {
|
|
87
|
+
click: evnt => $xeTable.triggerHeaderCellClickEvent(evnt, params),
|
|
88
|
+
dblclick: evnt => $xeTable.triggerHeaderCellDblclickEvent(evnt, params)
|
|
89
|
+
};
|
|
80
90
|
// 虚拟滚动不支持动态高度
|
|
81
91
|
if (scrollXLoad && !hasEllipsis) {
|
|
82
92
|
showEllipsis = hasEllipsis = true;
|
|
83
93
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
thOns.dblclick = evnt => $xetable.triggerHeaderCellDblclickEvent(evnt, params);
|
|
94
|
+
const isColDragCell = columnOpts.drag && columnDragOpts.trigger === 'cell';
|
|
95
|
+
let isDisabledDrag = false;
|
|
96
|
+
if (isColDragCell) {
|
|
97
|
+
isDisabledDrag = !!(dragDisabledMethod && dragDisabledMethod(params));
|
|
89
98
|
}
|
|
90
99
|
// 按下事件处理
|
|
91
|
-
if (mouseConfig) {
|
|
92
|
-
thOns.mousedown = evnt => $
|
|
100
|
+
if (mouseConfig || isColDragCell) {
|
|
101
|
+
thOns.mousedown = evnt => $xeTable.triggerHeaderCellMousedownEvent(evnt, params);
|
|
93
102
|
}
|
|
94
|
-
//
|
|
103
|
+
// 拖拽列事件
|
|
95
104
|
if (columnOpts.drag) {
|
|
96
|
-
thOns.dragstart = $
|
|
97
|
-
thOns.dragend = $
|
|
98
|
-
thOns.dragover = $
|
|
105
|
+
thOns.dragstart = $xeTable.handleHeaderCellDragDragstartEvent;
|
|
106
|
+
thOns.dragend = $xeTable.handleHeaderCellDragDragendEvent;
|
|
107
|
+
thOns.dragover = $xeTable.handleHeaderCellDragDragoverEvent;
|
|
108
|
+
if (isColDragCell) {
|
|
109
|
+
thOns.mouseup = $xeTable.handleHeaderCellDragMouseupEvent;
|
|
110
|
+
}
|
|
99
111
|
}
|
|
100
112
|
return h('th', {
|
|
101
113
|
class: ['vxe-header--column', colid, {
|
|
@@ -109,13 +121,10 @@ const renderRows = (h, _vm, cols, $rowIndex) => {
|
|
|
109
121
|
'is--sortable': column.sortable,
|
|
110
122
|
'col--filter': !!column.filters,
|
|
111
123
|
'is--filter-active': hasFilter,
|
|
124
|
+
'is--drag-disabled': isDisabledDrag,
|
|
112
125
|
'col--current': currentColumn === column
|
|
113
126
|
}, (0, _utils.getClass)(headerClassName, params), (0, _utils.getClass)(headerCellClassName, params)],
|
|
114
|
-
attrs:
|
|
115
|
-
colid,
|
|
116
|
-
colspan: column.colSpan > 1 ? column.colSpan : null,
|
|
117
|
-
rowspan: column.rowSpan > 1 ? column.rowSpan : null
|
|
118
|
-
},
|
|
127
|
+
attrs: thAttrs,
|
|
119
128
|
style: headerCellStyle ? _xeUtils.default.isFunction(headerCellStyle) ? headerCellStyle(params) : headerCellStyle : null,
|
|
120
129
|
on: thOns,
|
|
121
130
|
key: columnKey || columnOpts.useKey || columnOpts.drag || isColGroup ? colid : $columnIndex
|
|
@@ -143,29 +152,28 @@ const renderRows = (h, _vm, cols, $rowIndex) => {
|
|
|
143
152
|
})] : []);
|
|
144
153
|
};
|
|
145
154
|
function renderHeads(h, _vm, headerGroups) {
|
|
146
|
-
const
|
|
147
|
-
|
|
148
|
-
} = _vm;
|
|
149
|
-
const tableProps = $xetable;
|
|
155
|
+
const $xeTable = _vm.$parent;
|
|
156
|
+
const tableProps = $xeTable;
|
|
150
157
|
const {
|
|
151
158
|
fixedType
|
|
152
159
|
} = _vm;
|
|
160
|
+
const columnOpts = $xeTable.computeColumnOpts;
|
|
161
|
+
const columnDragOpts = $xeTable.computeColumnDragOpts;
|
|
153
162
|
const {
|
|
154
163
|
headerRowClassName,
|
|
155
164
|
headerRowStyle
|
|
156
165
|
} = tableProps;
|
|
157
166
|
const {
|
|
158
167
|
isDragColMove
|
|
159
|
-
} = $
|
|
160
|
-
const columnOpts = $xetable.columnOpts;
|
|
168
|
+
} = $xeTable;
|
|
161
169
|
return headerGroups.map((cols, $rowIndex) => {
|
|
162
170
|
const params = {
|
|
163
|
-
$table: $
|
|
171
|
+
$table: $xeTable,
|
|
164
172
|
$rowIndex,
|
|
165
173
|
fixed: fixedType,
|
|
166
174
|
type: cellType
|
|
167
175
|
};
|
|
168
|
-
if (columnOpts.drag) {
|
|
176
|
+
if (columnOpts.drag && columnDragOpts.animation) {
|
|
169
177
|
return h('transition-group', {
|
|
170
178
|
props: {
|
|
171
179
|
tag: 'tr',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let renderer=_ui.VxeUI.renderer,cellType="header",renderRows=(
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let renderer=_ui.VxeUI.renderer,cellType="header",renderRows=(v,C,b,y)=>{let _=C.$parent,w=_.xegrid,$=C.fixedType,{resizable:z,border:W,columnKey:H,headerCellClassName:M,headerCellStyle:D,showHeaderOverflow:R,headerAlign:S,align:T,currentColumn:O,scrollXLoad:E,overflowX:U,scrollbarWidth:e,mouseConfig:k,columnOpts:A}=_,I=_.computeColumnDragOpts,q=I.disabledMethod;return b.map((e,l)=>{var{type:t,showHeaderOverflow:r,headerAlign:a,align:i,headerClassName:o,editRender:n,cellRender:s}=e,d=e.id,n=n||s,s=n?renderer.get(n.name):null,n=e.children&&e.children.length,u=$?e.fixed!==$&&!n:e.fixed&&U,r=_xeUtils.default.isUndefined(r)||_xeUtils.default.isNull(r)?R:r,a=a||(s?s.tableHeaderCellAlign:"")||S||i||(s?s.tableCellAlign:"")||T;let c="ellipsis"===r;i="title"===r,s=!0===r||"tooltip"===r;let p=i||s||c;var r=e.filters&&e.filters.some(e=>e.checked),h=_.getColumnIndex(e),m=_.getVTColumnIndex(e);let f={$table:_,$grid:w,$rowIndex:y,column:e,columnIndex:h,$columnIndex:l,_columnIndex:m,fixed:$,type:cellType,isHidden:u,hasFilter:r};var h={colid:d,colspan:1<e.colSpan?e.colSpan:null,rowspan:1<e.rowSpan?e.rowSpan:null},m={click:e=>_.triggerHeaderCellClickEvent(e,f),dblclick:e=>_.triggerHeaderCellDblclickEvent(e,f)},g=(E&&!p&&(c=p=!0),A.drag&&"cell"===I.trigger);let x=!1;return g&&(x=!(!q||!q(f))),(k||g)&&(m.mousedown=e=>_.triggerHeaderCellMousedownEvent(e,f)),A.drag&&(m.dragstart=_.handleHeaderCellDragDragstartEvent,m.dragend=_.handleHeaderCellDragDragendEvent,m.dragover=_.handleHeaderCellDragDragoverEvent,g)&&(m.mouseup=_.handleHeaderCellDragMouseupEvent),v("th",{class:["vxe-header--column",d,{["col--"+a]:a,["col--"+t]:t,"col--last":l===b.length-1,"col--fixed":e.fixed,"col--group":n,"col--ellipsis":p,"fixed--hidden":u,"is--sortable":e.sortable,"col--filter":!!e.filters,"is--filter-active":r,"is--drag-disabled":x,"col--current":O===e},(0,_utils.getClass)(o,f),(0,_utils.getClass)(M,f)],attrs:h,style:D?_xeUtils.default.isFunction(D)?D(f):D:null,on:m,key:H||A.useKey||A.drag||n?d:l},[v("div",{class:["vxe-cell",{"c--title":i,"c--tooltip":s,"c--ellipsis":c}]},e.renderHeader(v,f)),u||n||!(_xeUtils.default.isBoolean(e.resizable)?e.resizable:A.resizable||z)?null:v("div",{class:["vxe-resizable",{"is--line":!W||"none"===W}],on:{mousedown:e=>C.resizeMousedown(e,f)}})])}).concat(e?[v("th",{key:"gr"+y,class:"vxe-header--gutter col--gutter"})]:[])};function renderHeads(r,a,e){let i=a.$parent;var l=i;let o=a.fixedType,n=i.computeColumnOpts,s=i.computeColumnDragOpts,{headerRowClassName:d,headerRowStyle:u}=l,c=i.isDragColMove;return e.map((e,l)=>{var t={$table:i,$rowIndex:l,fixed:o,type:cellType};return n.drag&&s.animation?r("transition-group",{props:{tag:"tr",name:"vxe-header--col-list"+(c?"":"-disabled"),class:["vxe-header--row",d?_xeUtils.default.isFunction(d)?d(t):d:""],style:u?_xeUtils.default.isFunction(u)?u(t):u:null}},renderRows(r,a,e,l)):r("tr",{class:["vxe-header--row",d?_xeUtils.default.isFunction(d)?d(t):d:""],style:u?_xeUtils.default.isFunction(u)?u(t):u:null},renderRows(r,a,e,l))})}var _default=exports.default={name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,size:String,fixedType:String},data(){return{headerColumn:[]}},watch:{tableColumn(){this.uploadColumn()}},created(){this.uploadColumn()},mounted(){var{$parent:e,$el:l,$refs:t,fixedType:r}=this,e=e.elemStore,r=`${r||"main"}-header-`;e[r+"wrapper"]=l,e[r+"table"]=t.table,e[r+"colgroup"]=t.colgroup,e[r+"list"]=t.thead,e[r+"xSpace"]=t.xSpace,e[r+"repair"]=t.repair},destroyed(){var{$parent:e,fixedType:l}=this,e=e.elemStore,l=`${l||"main"}-header-`;e[l+"wrapper"]=null,e[l+"table"]=null,e[l+"colgroup"]=null,e[l+"list"]=null,e[l+"xSpace"]=null,e[l+"repair"]=null},render(t){var{_e:e,$parent:l,fixedType:r,headerColumn:a,tableColumn:i,fixedColumn:o}=this,{tId:l,isGroup:n,visibleColumn:s,showHeaderOverflow:d,scrollXLoad:u,scrollbarWidth:c}=l;let p=a,h=i;return n?h=s:(r&&(u||d)&&(h=o),p=[h]),t("div",{class:["vxe-table--header-wrapper",r?`fixed-${r}--wrapper`:"body--wrapper"],attrs:{xid:l}},[r?e():t("div",{class:"vxe-body--x-space",ref:"xSpace"}),t("table",{class:"vxe-table--header",attrs:{xid:l,cellspacing:0,cellpadding:0,border:0},ref:"table"},[t("colgroup",{ref:"colgroup"},h.map((e,l)=>t("col",{attrs:{name:e.id},key:l})).concat(c?[t("col",{attrs:{name:"col_gutter"}})]:[])),t("thead",{ref:"thead"},renderHeads(t,this,p))]),t("div",{class:"vxe-table--header-border-line",ref:"repair"})])},methods:{uploadColumn(){var e=this.$parent;this.headerColumn=e.isGroup?(0,_util.convertHeaderColumnToRows)(this.tableGroupColumn):[]},resizeMousedown(e,t){var l=this.$parent;let s=t.column,{$parent:r,fixedType:d}=this,a=l.visibleColumn,{tableBody:i,leftContainer:u,rightContainer:c}=r.$refs,p=l.$el,h=r.$refs.resizeBar,m=r.$refs.refCellResizeTip,f=this.$el,{target:o,clientX:g}=e,x=t.cell=o.parentNode,v=l.computeResizableOpts,C=0,b=i.$el;var l=(0,_dom.getOffsetPos)(o,p),n=o.clientWidth,y=Math.floor(n/2);let _=(0,_util.getColReMinWidth)(t)-y,w=l.left-x.clientWidth+n+_,$=l.left+y,z=document.onmousemove,W=document.onmouseup,H="left"===d,M="right"===d,D=0;if(H||M){var R=H?"nextElementSibling":"previousElementSibling";let e=x[R];for(;e&&!(0,_dom.hasClass)(e,"fixed--hidden");)(0,_dom.hasClass)(e,"col--group")||(D+=e.offsetWidth),e=e[R];M&&c&&($=c.offsetLeft+D)}function S(l){l.stopPropagation(),l.preventDefault();var t=l.clientX-g;let e=$+t;if(t=d?0:b.scrollLeft,H?e=Math.min(e,(c?c.offsetLeft:b.clientWidth)-D-_):M?(w=(u?u.clientWidth:0)+D+_,e=Math.min(e,$+x.clientWidth-_)):w=Math.max(b.scrollLeft,w),t=(C=Math.max(e,w))-t,h.style.left=t+"px",v.showDragTip&&m){var r=p.clientWidth,a=f.getBoundingClientRect(),i=h.clientWidth,o=m.clientWidth,n=m.clientHeight;let e=-o;t<o+i?e=o+i-t:r<t&&(e+=r-t),m.style.left=e+"px",m.style.top=Math.min(p.clientHeight-n,Math.max(0,l.clientY-a.y-n/2))+"px",m.textContent=s.renderWidth+(M?$-C:C-$)+"px"}}r._isResize=!0,(0,_dom.addClass)(r.$el,"drag--resize"),h.style.display="block",document.onmousemove=S,document.onmouseup=function(e){document.onmousemove=z,document.onmouseup=W;let l=s.renderWidth+(M?$-C:C-$);s.resizeWidth=l,"fixed"===v.dragMode&&a.forEach(e=>{e.id===s.id||e.resizeWidth||(e.resizeWidth=e.renderWidth)}),h.style.display="none",r._isResize=!1,r._lastResizeTime=Date.now(),r.analyColumnWidth(),r.recalculate(!0).then(()=>{r.saveCustomStore("update:visible"),r.updateCellAreas(),r.emitEvent("resizable-change",Object.assign(Object.assign({},t),{resizeWidth:l}),e),setTimeout(()=>r.recalculate(!0),300)}),(0,_dom.removeClass)(r.$el,"drag--resize")},S(e),r.closeMenu()}}};
|
package/lib/table/src/methods.js
CHANGED
|
@@ -6074,6 +6074,94 @@ const Methods = {
|
|
|
6074
6074
|
$xeTable.handleColumnSortEvent(evnt, column);
|
|
6075
6075
|
}
|
|
6076
6076
|
},
|
|
6077
|
+
/**
|
|
6078
|
+
* 表头单元格按下事件
|
|
6079
|
+
*/
|
|
6080
|
+
triggerHeaderCellMousedownEvent(evnt, params) {
|
|
6081
|
+
const $xeTable = this;
|
|
6082
|
+
const props = $xeTable;
|
|
6083
|
+
const {
|
|
6084
|
+
mouseConfig
|
|
6085
|
+
} = props;
|
|
6086
|
+
const mouseOpts = $xeTable.computeMouseOpts;
|
|
6087
|
+
const columnOpts = $xeTable.computeColumnOpts;
|
|
6088
|
+
const columnDragOpts = $xeTable.computeColumnDragOpts;
|
|
6089
|
+
const {
|
|
6090
|
+
trigger,
|
|
6091
|
+
disabledMethod
|
|
6092
|
+
} = columnDragOpts;
|
|
6093
|
+
const cell = evnt.currentTarget;
|
|
6094
|
+
const triggerInput = cell && cell.tagName && cell.tagName.toLowerCase() === 'input';
|
|
6095
|
+
const triggerCheckbox = (0, _dom.getEventTargetNode)(evnt, cell, 'vxe-cell--checkbox').flag;
|
|
6096
|
+
const triggerSort = (0, _dom.getEventTargetNode)(evnt, cell, 'vxe-cell--sort').flag;
|
|
6097
|
+
const triggerFilter = (0, _dom.getEventTargetNode)(evnt, cell, 'vxe-cell--filter').flag;
|
|
6098
|
+
let triggerDrag = false;
|
|
6099
|
+
if (!(triggerInput || triggerCheckbox || triggerSort || triggerFilter)) {
|
|
6100
|
+
if (columnOpts.drag && trigger === 'cell' && !(disabledMethod && disabledMethod(params))) {
|
|
6101
|
+
triggerDrag = true;
|
|
6102
|
+
$xeTable.handleHeaderCellDragMousedownEvent(evnt, params);
|
|
6103
|
+
}
|
|
6104
|
+
}
|
|
6105
|
+
if (!triggerDrag && mouseConfig && mouseOpts.area && $xeTable.handleHeaderCellAreaEvent) {
|
|
6106
|
+
$xeTable.handleHeaderCellAreaEvent(evnt, Object.assign({
|
|
6107
|
+
cell,
|
|
6108
|
+
triggerSort,
|
|
6109
|
+
triggerFilter
|
|
6110
|
+
}, params));
|
|
6111
|
+
}
|
|
6112
|
+
$xeTable.focus();
|
|
6113
|
+
if ($xeTable.closeMenu) {
|
|
6114
|
+
$xeTable.closeMenu();
|
|
6115
|
+
}
|
|
6116
|
+
},
|
|
6117
|
+
/**
|
|
6118
|
+
* 单元格按下事件
|
|
6119
|
+
*/
|
|
6120
|
+
triggerCellMousedownEvent(evnt, params) {
|
|
6121
|
+
const $xeTable = this;
|
|
6122
|
+
const {
|
|
6123
|
+
column
|
|
6124
|
+
} = params;
|
|
6125
|
+
const {
|
|
6126
|
+
type,
|
|
6127
|
+
treeNode
|
|
6128
|
+
} = column;
|
|
6129
|
+
const isRadioType = type === 'radio';
|
|
6130
|
+
const isCheckboxType = type === 'checkbox';
|
|
6131
|
+
const isExpandType = type === 'expand';
|
|
6132
|
+
const rowOpts = $xeTable.computeRowOpts;
|
|
6133
|
+
const rowDragOpts = $xeTable.computeRowDragOpts;
|
|
6134
|
+
const {
|
|
6135
|
+
trigger,
|
|
6136
|
+
disabledMethod
|
|
6137
|
+
} = rowDragOpts;
|
|
6138
|
+
const cell = evnt.currentTarget;
|
|
6139
|
+
params.cell = cell;
|
|
6140
|
+
const triggerInput = cell && cell.tagName && cell.tagName.toLowerCase() === 'input';
|
|
6141
|
+
const triggerRadio = isRadioType && (0, _dom.getEventTargetNode)(evnt, cell, 'vxe-cell--radio').flag;
|
|
6142
|
+
const triggerCheckbox = isCheckboxType && (0, _dom.getEventTargetNode)(evnt, cell, 'vxe-cell--checkbox').flag;
|
|
6143
|
+
const triggerTreeNode = treeNode && (0, _dom.getEventTargetNode)(evnt, cell, 'vxe-tree--btn-wrapper').flag;
|
|
6144
|
+
const triggerExpandNode = isExpandType && (0, _dom.getEventTargetNode)(evnt, cell, 'vxe-table--expanded').flag;
|
|
6145
|
+
let isColDragCell = false;
|
|
6146
|
+
if (rowOpts.drag) {
|
|
6147
|
+
isColDragCell = trigger === 'row' || column.dragSort && trigger === 'cell';
|
|
6148
|
+
}
|
|
6149
|
+
let triggerDrag = false;
|
|
6150
|
+
if (!(triggerInput || triggerRadio || triggerCheckbox || triggerTreeNode || triggerExpandNode)) {
|
|
6151
|
+
if (isColDragCell && !(disabledMethod && disabledMethod(params))) {
|
|
6152
|
+
triggerDrag = true;
|
|
6153
|
+
$xeTable.handleCellDragMousedownEvent(evnt, params);
|
|
6154
|
+
}
|
|
6155
|
+
}
|
|
6156
|
+
if (!triggerDrag && $xeTable.handleCellMousedownEvent) {
|
|
6157
|
+
$xeTable.handleCellMousedownEvent(evnt, params);
|
|
6158
|
+
}
|
|
6159
|
+
$xeTable.focus();
|
|
6160
|
+
$xeTable.closeFilter();
|
|
6161
|
+
if ($xeTable.closeMenu) {
|
|
6162
|
+
$xeTable.closeMenu();
|
|
6163
|
+
}
|
|
6164
|
+
},
|
|
6077
6165
|
/**
|
|
6078
6166
|
* 行拖拽
|
|
6079
6167
|
*/
|
|
@@ -6335,18 +6423,20 @@ const Methods = {
|
|
|
6335
6423
|
const $xeTable = this;
|
|
6336
6424
|
const props = $xeTable;
|
|
6337
6425
|
const reactData = $xeTable;
|
|
6426
|
+
evnt.stopPropagation();
|
|
6338
6427
|
const {
|
|
6339
6428
|
dragConfig
|
|
6340
6429
|
} = props;
|
|
6341
6430
|
const rowDragOpts = $xeTable.computeRowDragOpts;
|
|
6342
6431
|
const {
|
|
6432
|
+
trigger,
|
|
6343
6433
|
dragStartMethod
|
|
6344
6434
|
} = rowDragOpts;
|
|
6345
6435
|
const {
|
|
6346
6436
|
row
|
|
6347
6437
|
} = params;
|
|
6348
6438
|
const dragEl = evnt.currentTarget;
|
|
6349
|
-
const tdEl = (_a = dragEl.parentElement) === null || _a === void 0 ? void 0 : _a.parentElement;
|
|
6439
|
+
const tdEl = trigger === 'cell' || trigger === 'row' ? dragEl : (_a = dragEl.parentElement) === null || _a === void 0 ? void 0 : _a.parentElement;
|
|
6350
6440
|
const trEl = tdEl.parentElement;
|
|
6351
6441
|
const dStartMethod = dragStartMethod || (dragConfig ? dragConfig.dragStartMethod : null);
|
|
6352
6442
|
reactData.isDragRowMove = false;
|
|
@@ -6607,15 +6697,17 @@ const Methods = {
|
|
|
6607
6697
|
var _a;
|
|
6608
6698
|
const $xeTable = this;
|
|
6609
6699
|
const reactData = $xeTable;
|
|
6700
|
+
evnt.stopPropagation();
|
|
6610
6701
|
const columnDragOpts = $xeTable.computeColumnDragOpts;
|
|
6611
6702
|
const {
|
|
6703
|
+
trigger,
|
|
6612
6704
|
dragStartMethod
|
|
6613
6705
|
} = columnDragOpts;
|
|
6614
6706
|
const {
|
|
6615
6707
|
column
|
|
6616
6708
|
} = params;
|
|
6617
6709
|
const dragEl = evnt.currentTarget;
|
|
6618
|
-
const thEl = (_a = dragEl.parentElement) === null || _a === void 0 ? void 0 : _a.parentElement;
|
|
6710
|
+
const thEl = trigger === 'cell' ? dragEl : (_a = dragEl.parentElement) === null || _a === void 0 ? void 0 : _a.parentElement;
|
|
6619
6711
|
reactData.isDragColMove = false;
|
|
6620
6712
|
clearColDropOrigin($xeTable);
|
|
6621
6713
|
if (dragStartMethod && !dragStartMethod(params)) {
|