vxe-table 3.19.28 → 3.19.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/style.css +1 -1
- package/es/table/src/methods.js +210 -170
- package/es/table/src/table.js +1 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +29 -28
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/src/methods.js +212 -172
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +1 -1
- package/lib/table/src/table.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +1 -1
- package/packages/table/src/methods.ts +215 -172
- package/packages/table/src/table.ts +1 -1
- /package/es/{iconfont.1765353143587.ttf → iconfont.1765538900604.ttf} +0 -0
- /package/es/{iconfont.1765353143587.woff → iconfont.1765538900604.woff} +0 -0
- /package/es/{iconfont.1765353143587.woff2 → iconfont.1765538900604.woff2} +0 -0
- /package/lib/{iconfont.1765353143587.ttf → iconfont.1765538900604.ttf} +0 -0
- /package/lib/{iconfont.1765353143587.woff → iconfont.1765538900604.woff} +0 -0
- /package/lib/{iconfont.1765353143587.woff2 → iconfont.1765538900604.woff2} +0 -0
|
@@ -2633,6 +2633,18 @@ function clearDragStatus ($xeTable: VxeTableConstructor & VxeTablePrivateMethods
|
|
|
2633
2633
|
}
|
|
2634
2634
|
}
|
|
2635
2635
|
|
|
2636
|
+
function handleRowDragEndClearStatus ($xeTable: VxeTableConstructor & VxeTablePrivateMethods) {
|
|
2637
|
+
clearRowDragData($xeTable)
|
|
2638
|
+
clearCrossTableDragStatus($xeTable)
|
|
2639
|
+
handleRecalculateStyle($xeTable, false, true, true)
|
|
2640
|
+
}
|
|
2641
|
+
|
|
2642
|
+
function handleColDragEndClearStatus ($xeTable: VxeTableConstructor & VxeTablePrivateMethods) {
|
|
2643
|
+
clearColDragData($xeTable)
|
|
2644
|
+
clearCrossTableDragStatus($xeTable)
|
|
2645
|
+
handleRecalculateStyle($xeTable, true, true, true)
|
|
2646
|
+
}
|
|
2647
|
+
|
|
2636
2648
|
function clearRowDropOrigin ($xeTable: VxeTableConstructor & VxeTablePrivateMethods) {
|
|
2637
2649
|
const el = $xeTable.$el
|
|
2638
2650
|
if (el) {
|
|
@@ -3352,14 +3364,14 @@ function handleGroupData ($xeTable: VxeTableConstructor & VxeTablePrivateMethods
|
|
|
3352
3364
|
* 加载表格数据
|
|
3353
3365
|
* @param {Array} datas 数据
|
|
3354
3366
|
*/
|
|
3355
|
-
function loadTableData ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, datas: any[], isReset: boolean) {
|
|
3367
|
+
function loadTableData ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, datas: any[], isReload: boolean, isReset: boolean) {
|
|
3356
3368
|
const props = $xeTable
|
|
3357
3369
|
const reactData = $xeTable as unknown as TableReactData
|
|
3358
3370
|
const internalData = $xeTable as unknown as TableInternalData
|
|
3359
3371
|
|
|
3360
3372
|
const { keepSource, treeConfig, aggregateConfig, rowGroupConfig } = props
|
|
3361
3373
|
const { rowGroupList, scrollYLoad: oldScrollYLoad } = reactData
|
|
3362
|
-
const { scrollYStore, scrollXStore, lastScrollLeft, lastScrollTop } = internalData
|
|
3374
|
+
const { initStatus, scrollYStore, scrollXStore, lastScrollLeft, lastScrollTop } = internalData
|
|
3363
3375
|
const rowOpts = $xeTable.computeRowOpts
|
|
3364
3376
|
const treeOpts = $xeTable.computeTreeOpts
|
|
3365
3377
|
const expandOpts = $xeTable.computeExpandOpts
|
|
@@ -3498,6 +3510,18 @@ function loadTableData ($xeTable: VxeTableConstructor & VxeTablePrivateMethods,
|
|
|
3498
3510
|
|
|
3499
3511
|
handleReserveStatus($xeTable)
|
|
3500
3512
|
$xeTable.checkSelectionStatus()
|
|
3513
|
+
if (initStatus) {
|
|
3514
|
+
$xeTable.dispatchEvent('data-rendered', {
|
|
3515
|
+
isReload,
|
|
3516
|
+
visibleColumn: internalData.visibleColumn,
|
|
3517
|
+
visibleData: internalData.afterFullData
|
|
3518
|
+
}, null)
|
|
3519
|
+
} else {
|
|
3520
|
+
$xeTable.dispatchEvent('init-rendered', {
|
|
3521
|
+
visibleColumn: internalData.visibleColumn,
|
|
3522
|
+
visibleData: internalData.afterFullData
|
|
3523
|
+
}, null)
|
|
3524
|
+
}
|
|
3501
3525
|
$xeTable.dispatchEvent('data-change', {
|
|
3502
3526
|
visibleColumn: internalData.visibleColumn,
|
|
3503
3527
|
visibleData: internalData.afterFullData
|
|
@@ -3569,7 +3593,14 @@ function handleLoadDefaults ($xeTable: VxeTableConstructor & VxeTablePrivateMeth
|
|
|
3569
3593
|
handleDefaultMergeCells($xeTable)
|
|
3570
3594
|
handleDefaultMergeHeaderItems($xeTable)
|
|
3571
3595
|
handleDefaultMergeFooterItems($xeTable)
|
|
3572
|
-
$xeTable.$nextTick(() =>
|
|
3596
|
+
$xeTable.$nextTick(() => {
|
|
3597
|
+
const internalData = $xeTable as unknown as TableInternalData
|
|
3598
|
+
$xeTable.dispatchEvent('init-rendered', {
|
|
3599
|
+
visibleColumn: internalData.visibleColumn,
|
|
3600
|
+
visibleData: internalData.afterFullData
|
|
3601
|
+
}, null)
|
|
3602
|
+
setTimeout(() => $xeTable.recalculate())
|
|
3603
|
+
})
|
|
3573
3604
|
}
|
|
3574
3605
|
|
|
3575
3606
|
/**
|
|
@@ -4505,7 +4536,7 @@ const tableMethods: any = {
|
|
|
4505
4536
|
errLog('vxe.error.delFunc', ['syncData', 'getData'])
|
|
4506
4537
|
return $xeTable.$nextTick().then(() => {
|
|
4507
4538
|
reactData.tableData = []
|
|
4508
|
-
return $xeTable.$nextTick().then(() => loadTableData($xeTable, internalData.tableFullData, true))
|
|
4539
|
+
return $xeTable.$nextTick().then(() => loadTableData($xeTable, internalData.tableFullData, true, true))
|
|
4509
4540
|
})
|
|
4510
4541
|
},
|
|
4511
4542
|
/**
|
|
@@ -4576,7 +4607,8 @@ const tableMethods: any = {
|
|
|
4576
4607
|
const internalData = $xeTable as unknown as TableInternalData
|
|
4577
4608
|
|
|
4578
4609
|
const { data } = props
|
|
4579
|
-
|
|
4610
|
+
$xeTable.dispatchEvent('ready', {}, null)
|
|
4611
|
+
loadTableData($xeTable, data || [], true, true).then(() => {
|
|
4580
4612
|
if (data && data.length) {
|
|
4581
4613
|
internalData.inited = true
|
|
4582
4614
|
internalData.initStatus = true
|
|
@@ -4594,10 +4626,10 @@ const tableMethods: any = {
|
|
|
4594
4626
|
* 加载表格数据
|
|
4595
4627
|
* @param {Array} datas 数据
|
|
4596
4628
|
*/
|
|
4597
|
-
loadTableData (datas: any[], isReset: boolean) {
|
|
4629
|
+
loadTableData (datas: any[], isReload: boolean, isReset: boolean) {
|
|
4598
4630
|
const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
|
|
4599
4631
|
|
|
4600
|
-
return loadTableData($xeTable, datas, isReset)
|
|
4632
|
+
return loadTableData($xeTable, datas, isReload, isReset)
|
|
4601
4633
|
},
|
|
4602
4634
|
/**
|
|
4603
4635
|
* 重新加载数据,不会清空表格状态
|
|
@@ -4605,12 +4637,13 @@ const tableMethods: any = {
|
|
|
4605
4637
|
*/
|
|
4606
4638
|
loadData (datas: any) {
|
|
4607
4639
|
const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
|
|
4640
|
+
const internalData = $xeTable as unknown as TableInternalData
|
|
4608
4641
|
|
|
4609
|
-
const { initStatus } =
|
|
4610
|
-
return loadTableData($xeTable, datas, false).then(() => {
|
|
4611
|
-
|
|
4612
|
-
|
|
4613
|
-
if (
|
|
4642
|
+
const { initStatus } = internalData
|
|
4643
|
+
return loadTableData($xeTable, datas, false, false).then(() => {
|
|
4644
|
+
internalData.inited = true
|
|
4645
|
+
internalData.initStatus = true
|
|
4646
|
+
if (initStatus) {
|
|
4614
4647
|
handleLoadDefaults($xeTable)
|
|
4615
4648
|
}
|
|
4616
4649
|
return handleLazyRecalculate($xeTable, false, true, true)
|
|
@@ -4622,12 +4655,13 @@ const tableMethods: any = {
|
|
|
4622
4655
|
*/
|
|
4623
4656
|
reloadData (datas: any) {
|
|
4624
4657
|
const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
|
|
4658
|
+
const internalData = $xeTable as unknown as TableInternalData
|
|
4625
4659
|
|
|
4626
|
-
return
|
|
4660
|
+
return $xeTable.clearAll()
|
|
4627
4661
|
.then(() => {
|
|
4628
|
-
|
|
4629
|
-
|
|
4630
|
-
return loadTableData($xeTable, datas, true)
|
|
4662
|
+
internalData.inited = true
|
|
4663
|
+
internalData.initStatus = true
|
|
4664
|
+
return loadTableData($xeTable, datas, true, true)
|
|
4631
4665
|
})
|
|
4632
4666
|
.then(() => {
|
|
4633
4667
|
handleLoadDefaults($xeTable)
|
|
@@ -4638,6 +4672,8 @@ const tableMethods: any = {
|
|
|
4638
4672
|
* 修改行数据
|
|
4639
4673
|
*/
|
|
4640
4674
|
setRow (rows: any, record: any) {
|
|
4675
|
+
const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
|
|
4676
|
+
|
|
4641
4677
|
if (record) {
|
|
4642
4678
|
let rest = rows
|
|
4643
4679
|
if (!XEUtils.isArray(rows)) {
|
|
@@ -4645,7 +4681,7 @@ const tableMethods: any = {
|
|
|
4645
4681
|
}
|
|
4646
4682
|
rest.forEach((item:any) => Object.assign(item, record))
|
|
4647
4683
|
}
|
|
4648
|
-
return
|
|
4684
|
+
return $xeTable.$nextTick()
|
|
4649
4685
|
},
|
|
4650
4686
|
/**
|
|
4651
4687
|
* 局部加载行数据并恢复到初始状态
|
|
@@ -9026,80 +9062,48 @@ const tableMethods: any = {
|
|
|
9026
9062
|
dragToChild: !!prevDragToChild,
|
|
9027
9063
|
offsetIndex: dragOffsetIndex as 0 | 1
|
|
9028
9064
|
}
|
|
9029
|
-
const isDragToChildFlag = isSelfToChildDrag && dragToChildMethod ? dragToChildMethod(dragParams) : prevDragToChild
|
|
9030
|
-
return Promise.resolve(dEndMethod ? dEndMethod(dragParams) : true).then((status) => {
|
|
9031
|
-
if (!status) {
|
|
9032
|
-
return errRest
|
|
9033
|
-
}
|
|
9034
9065
|
|
|
9035
|
-
|
|
9036
|
-
|
|
9037
|
-
|
|
9038
|
-
|
|
9039
|
-
|
|
9040
|
-
|
|
9041
|
-
|
|
9042
|
-
|
|
9043
|
-
|
|
9044
|
-
|
|
9045
|
-
}
|
|
9066
|
+
const dragRowid = getRowid($xeTable, dragRow)
|
|
9067
|
+
const dragRowRest = fullAllDataRowIdData[dragRowid] || {}
|
|
9068
|
+
const _dragRowIndex = dragRowRest._index
|
|
9069
|
+
let dragRowHeight = 0
|
|
9070
|
+
let dragOffsetTop = -1
|
|
9071
|
+
if (animation) {
|
|
9072
|
+
dragRowHeight = getCellRestHeight(dragRowRest, cellOpts, rowOpts, defaultRowHeight)
|
|
9073
|
+
const oldTrEl = el.querySelector<HTMLElement>(`.vxe-body--row[rowid="${dragRowid}"]`)
|
|
9074
|
+
if (oldTrEl) {
|
|
9075
|
+
dragOffsetTop = oldTrEl.offsetTop
|
|
9046
9076
|
}
|
|
9077
|
+
}
|
|
9047
9078
|
|
|
9048
|
-
|
|
9049
|
-
|
|
9050
|
-
|
|
9051
|
-
|
|
9052
|
-
|
|
9053
|
-
|
|
9054
|
-
|
|
9055
|
-
const newRowid = getRowid($xeTable, prevDragRow)
|
|
9056
|
-
const newRest = fullAllDataRowIdData[newRowid]
|
|
9057
|
-
|
|
9058
|
-
if (oldRest && newRest) {
|
|
9059
|
-
const { level: oldLevel } = oldRest
|
|
9060
|
-
const { level: newLevel } = newRest
|
|
9079
|
+
let oafIndex = -1
|
|
9080
|
+
let nafIndex = -1
|
|
9081
|
+
const oldRest = dragRowRest
|
|
9082
|
+
const newRowid = getRowid($xeTable, prevDragRow)
|
|
9083
|
+
const newRest = fullAllDataRowIdData[newRowid]
|
|
9084
|
+
const oldAllMaps: Record<string, any> = {}
|
|
9085
|
+
let isSelfToChildStatus = false
|
|
9061
9086
|
|
|
9062
|
-
|
|
9063
|
-
|
|
9064
|
-
|
|
9065
|
-
|
|
9087
|
+
// 如果为树结构
|
|
9088
|
+
if (treeConfig) {
|
|
9089
|
+
if (transform) {
|
|
9090
|
+
if (oldRest && newRest) {
|
|
9091
|
+
const { level: oldLevel } = oldRest
|
|
9092
|
+
const { level: newLevel } = newRest
|
|
9066
9093
|
|
|
9067
|
-
|
|
9094
|
+
XEUtils.eachTree([dragRow], item => {
|
|
9095
|
+
oldAllMaps[getRowid($xeTable, item)] = item
|
|
9096
|
+
}, { children: mapChildrenField })
|
|
9068
9097
|
|
|
9069
|
-
|
|
9070
|
-
|
|
9098
|
+
if (oldLevel && newLevel) {
|
|
9099
|
+
// 子到子
|
|
9071
9100
|
|
|
9072
|
-
|
|
9073
|
-
|
|
9074
|
-
|
|
9075
|
-
return errRest
|
|
9076
|
-
}
|
|
9077
|
-
} else {
|
|
9078
|
-
if (!isCrossDrag) {
|
|
9079
|
-
return errRest
|
|
9080
|
-
}
|
|
9081
|
-
if (oldAllMaps[newRowid]) {
|
|
9082
|
-
isSelfToChildStatus = true
|
|
9083
|
-
if (!(isCrossDrag && isSelfToChildDrag)) {
|
|
9084
|
-
if (VxeUI.modal) {
|
|
9085
|
-
VxeUI.modal.message({
|
|
9086
|
-
status: 'error',
|
|
9087
|
-
content: getI18n('vxe.error.treeDragChild')
|
|
9088
|
-
})
|
|
9089
|
-
}
|
|
9090
|
-
return errRest
|
|
9091
|
-
}
|
|
9092
|
-
}
|
|
9093
|
-
}
|
|
9094
|
-
} else if (oldLevel) {
|
|
9095
|
-
// 子到根
|
|
9096
|
-
|
|
9097
|
-
if (!isCrossDrag) {
|
|
9101
|
+
if (isPeerDrag && !isCrossDrag) {
|
|
9102
|
+
if (oldRest.row[parentField] !== newRest.row[parentField]) {
|
|
9103
|
+
// 非同级
|
|
9098
9104
|
return errRest
|
|
9099
9105
|
}
|
|
9100
|
-
} else
|
|
9101
|
-
// 根到子
|
|
9102
|
-
|
|
9106
|
+
} else {
|
|
9103
9107
|
if (!isCrossDrag) {
|
|
9104
9108
|
return errRest
|
|
9105
9109
|
}
|
|
@@ -9115,10 +9119,49 @@ const tableMethods: any = {
|
|
|
9115
9119
|
return errRest
|
|
9116
9120
|
}
|
|
9117
9121
|
}
|
|
9118
|
-
} else {
|
|
9119
|
-
// 根到根
|
|
9120
9122
|
}
|
|
9123
|
+
} else if (oldLevel) {
|
|
9124
|
+
// 子到根
|
|
9121
9125
|
|
|
9126
|
+
if (!isCrossDrag) {
|
|
9127
|
+
return errRest
|
|
9128
|
+
}
|
|
9129
|
+
} else if (newLevel) {
|
|
9130
|
+
// 根到子
|
|
9131
|
+
|
|
9132
|
+
if (!isCrossDrag) {
|
|
9133
|
+
return errRest
|
|
9134
|
+
}
|
|
9135
|
+
if (oldAllMaps[newRowid]) {
|
|
9136
|
+
isSelfToChildStatus = true
|
|
9137
|
+
if (!(isCrossDrag && isSelfToChildDrag)) {
|
|
9138
|
+
if (VxeUI.modal) {
|
|
9139
|
+
VxeUI.modal.message({
|
|
9140
|
+
status: 'error',
|
|
9141
|
+
content: getI18n('vxe.error.treeDragChild')
|
|
9142
|
+
})
|
|
9143
|
+
}
|
|
9144
|
+
return errRest
|
|
9145
|
+
}
|
|
9146
|
+
}
|
|
9147
|
+
} else {
|
|
9148
|
+
// 根到根
|
|
9149
|
+
}
|
|
9150
|
+
}
|
|
9151
|
+
}
|
|
9152
|
+
}
|
|
9153
|
+
|
|
9154
|
+
const isDragToChildFlag = isSelfToChildDrag && dragToChildMethod ? dragToChildMethod(dragParams) : prevDragToChild
|
|
9155
|
+
return Promise.resolve(dEndMethod ? dEndMethod(dragParams) : true).then((status) => {
|
|
9156
|
+
if (!status) {
|
|
9157
|
+
return errRest
|
|
9158
|
+
}
|
|
9159
|
+
|
|
9160
|
+
// 如果为树结构
|
|
9161
|
+
if (treeConfig) {
|
|
9162
|
+
if (transform) {
|
|
9163
|
+
// 移出源位置
|
|
9164
|
+
if (oldRest && newRest) {
|
|
9122
9165
|
const fullList = XEUtils.toTreeArray(internalData.afterTreeFullData, {
|
|
9123
9166
|
key: rowField,
|
|
9124
9167
|
parentKey: parentField,
|
|
@@ -9274,20 +9317,17 @@ const tableMethods: any = {
|
|
|
9274
9317
|
}).catch(() => {
|
|
9275
9318
|
return errRest
|
|
9276
9319
|
}).then((rest) => {
|
|
9277
|
-
|
|
9278
|
-
clearCrossTableDragStatus($xeTable)
|
|
9320
|
+
handleRowDragEndClearStatus($xeTable)
|
|
9279
9321
|
return rest
|
|
9280
9322
|
})
|
|
9281
9323
|
}
|
|
9282
|
-
|
|
9283
|
-
clearCrossTableDragStatus($xeTable)
|
|
9324
|
+
handleRowDragEndClearStatus($xeTable)
|
|
9284
9325
|
return Promise.resolve(errRest)
|
|
9285
9326
|
},
|
|
9286
9327
|
handleCrossTableRowDragCancelEvent () {
|
|
9287
9328
|
const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
|
|
9288
9329
|
|
|
9289
|
-
|
|
9290
|
-
clearCrossTableDragStatus($xeTable)
|
|
9330
|
+
handleRowDragEndClearStatus($xeTable)
|
|
9291
9331
|
},
|
|
9292
9332
|
/**
|
|
9293
9333
|
* 处理跨表拖拽完成
|
|
@@ -9353,8 +9393,7 @@ const tableMethods: any = {
|
|
|
9353
9393
|
$xeTable.dispatchEvent('row-remove-dragend', {
|
|
9354
9394
|
row: dragRow
|
|
9355
9395
|
}, evnt)
|
|
9356
|
-
|
|
9357
|
-
clearCrossTableDragStatus($xeTable)
|
|
9396
|
+
handleRowDragEndClearStatus($xeTable)
|
|
9358
9397
|
}
|
|
9359
9398
|
}
|
|
9360
9399
|
},
|
|
@@ -9438,8 +9477,7 @@ const tableMethods: any = {
|
|
|
9438
9477
|
$oldTable.handleCrossTableRowDragCancelEvent(evnt)
|
|
9439
9478
|
}
|
|
9440
9479
|
}
|
|
9441
|
-
|
|
9442
|
-
clearCrossTableDragStatus($xeTable)
|
|
9480
|
+
handleRowDragEndClearStatus($xeTable)
|
|
9443
9481
|
return errRest
|
|
9444
9482
|
}
|
|
9445
9483
|
let insertRest: Promise<any> = Promise.resolve()
|
|
@@ -9736,86 +9774,58 @@ const tableMethods: any = {
|
|
|
9736
9774
|
dragToChild: !!prevDragToChild,
|
|
9737
9775
|
offsetIndex: dragOffsetIndex as 0 | 1
|
|
9738
9776
|
}
|
|
9739
|
-
const isDragToChildFlag = isSelfToChildDrag && dragToChildMethod ? dragToChildMethod(dragParams) : prevDragToChild
|
|
9740
|
-
return Promise.resolve(dragEndMethod ? dragEndMethod(dragParams) : true).then((status) => {
|
|
9741
|
-
if (!status) {
|
|
9742
|
-
return errRest
|
|
9743
|
-
}
|
|
9744
9777
|
|
|
9745
|
-
|
|
9746
|
-
|
|
9747
|
-
|
|
9748
|
-
|
|
9749
|
-
|
|
9750
|
-
|
|
9751
|
-
|
|
9752
|
-
|
|
9753
|
-
}
|
|
9754
|
-
dragAllTargetCols.push(column)
|
|
9755
|
-
})
|
|
9756
|
-
}
|
|
9757
|
-
if (!dragTargetColumn) {
|
|
9758
|
-
dragTargetColumn = dragColumn
|
|
9759
|
-
}
|
|
9760
|
-
const dragColRest = fullColumnIdData[dragTargetColumn.id] || {}
|
|
9761
|
-
const _dragColIndex = dragColRest._index
|
|
9762
|
-
|
|
9763
|
-
let dragOffsetLeft = -1
|
|
9764
|
-
if (animation) {
|
|
9765
|
-
const oldTrEl = el.querySelector<HTMLElement>(`.vxe-table--column[colid="${dragTargetColumn.id}"]`)
|
|
9766
|
-
if (oldTrEl) {
|
|
9767
|
-
dragOffsetLeft = oldTrEl.offsetLeft
|
|
9778
|
+
let dragTargetColumn: VxeTableDefines.ColumnInfo | null = null
|
|
9779
|
+
const dragAllTargetCols: VxeTableDefines.ColumnInfo[] = []
|
|
9780
|
+
let dragColWidth = 0
|
|
9781
|
+
if (animation) {
|
|
9782
|
+
XEUtils.eachTree([dragColumn], column => {
|
|
9783
|
+
if (!dragTargetColumn && (!column.children || !column.children.length)) {
|
|
9784
|
+
dragTargetColumn = column
|
|
9785
|
+
dragColWidth += column.renderWidth
|
|
9768
9786
|
}
|
|
9769
|
-
|
|
9787
|
+
dragAllTargetCols.push(column)
|
|
9788
|
+
})
|
|
9789
|
+
}
|
|
9790
|
+
if (!dragTargetColumn) {
|
|
9791
|
+
dragTargetColumn = dragColumn
|
|
9792
|
+
}
|
|
9793
|
+
const dragColRest = fullColumnIdData[dragTargetColumn.id] || {}
|
|
9794
|
+
const _dragColIndex = dragColRest._index
|
|
9770
9795
|
|
|
9771
|
-
|
|
9772
|
-
|
|
9796
|
+
let dragOffsetLeft = -1
|
|
9797
|
+
if (animation) {
|
|
9798
|
+
const oldTrEl = el.querySelector<HTMLElement>(`.vxe-table--column[colid="${dragTargetColumn.id}"]`)
|
|
9799
|
+
if (oldTrEl) {
|
|
9800
|
+
dragOffsetLeft = oldTrEl.offsetLeft
|
|
9801
|
+
}
|
|
9802
|
+
}
|
|
9773
9803
|
|
|
9774
|
-
|
|
9775
|
-
|
|
9776
|
-
oldAllMaps[column.id] = column
|
|
9777
|
-
})
|
|
9804
|
+
let oafIndex = -1
|
|
9805
|
+
let nafIndex = -1
|
|
9778
9806
|
|
|
9779
|
-
|
|
9807
|
+
const oldAllMaps: Record<string, any> = {}
|
|
9808
|
+
XEUtils.eachTree([dragColumn], column => {
|
|
9809
|
+
oldAllMaps[column.id] = column
|
|
9810
|
+
})
|
|
9780
9811
|
|
|
9781
|
-
|
|
9782
|
-
// 子到子
|
|
9812
|
+
let isSelfToChildStatus = false
|
|
9783
9813
|
|
|
9784
|
-
|
|
9785
|
-
|
|
9786
|
-
// 非同级
|
|
9787
|
-
return errRest
|
|
9788
|
-
}
|
|
9789
|
-
} else {
|
|
9790
|
-
if (!isCrossDrag) {
|
|
9791
|
-
return errRest
|
|
9792
|
-
}
|
|
9814
|
+
if (dragColumn.parentId && newColumn.parentId) {
|
|
9815
|
+
// 子到子
|
|
9793
9816
|
|
|
9794
|
-
|
|
9795
|
-
|
|
9796
|
-
|
|
9797
|
-
|
|
9798
|
-
|
|
9799
|
-
status: 'error',
|
|
9800
|
-
content: getI18n('vxe.error.treeDragChild')
|
|
9801
|
-
})
|
|
9802
|
-
}
|
|
9803
|
-
return errRest
|
|
9804
|
-
}
|
|
9805
|
-
}
|
|
9817
|
+
if (isPeerDrag && !isCrossDrag) {
|
|
9818
|
+
if (dragColumn.parentId !== newColumn.parentId) {
|
|
9819
|
+
// 非同级
|
|
9820
|
+
handleColDragEndClearStatus($xeTable)
|
|
9821
|
+
return Promise.resolve(errRest)
|
|
9806
9822
|
}
|
|
9807
|
-
} else
|
|
9808
|
-
// 子到根
|
|
9809
|
-
|
|
9823
|
+
} else {
|
|
9810
9824
|
if (!isCrossDrag) {
|
|
9811
|
-
|
|
9825
|
+
handleColDragEndClearStatus($xeTable)
|
|
9826
|
+
return Promise.resolve(errRest)
|
|
9812
9827
|
}
|
|
9813
|
-
} else if (newColumn.parentId) {
|
|
9814
|
-
// 根到子
|
|
9815
9828
|
|
|
9816
|
-
if (!isCrossDrag) {
|
|
9817
|
-
return errRest
|
|
9818
|
-
}
|
|
9819
9829
|
if (oldAllMaps[newColumn.id]) {
|
|
9820
9830
|
isSelfToChildStatus = true
|
|
9821
9831
|
if (!(isCrossDrag && isSelfToChildDrag)) {
|
|
@@ -9825,11 +9835,46 @@ const tableMethods: any = {
|
|
|
9825
9835
|
content: getI18n('vxe.error.treeDragChild')
|
|
9826
9836
|
})
|
|
9827
9837
|
}
|
|
9828
|
-
|
|
9838
|
+
handleColDragEndClearStatus($xeTable)
|
|
9839
|
+
return Promise.resolve(errRest)
|
|
9829
9840
|
}
|
|
9830
9841
|
}
|
|
9831
|
-
}
|
|
9832
|
-
|
|
9842
|
+
}
|
|
9843
|
+
} else if (dragColumn.parentId) {
|
|
9844
|
+
// 子到根
|
|
9845
|
+
|
|
9846
|
+
if (!isCrossDrag) {
|
|
9847
|
+
handleColDragEndClearStatus($xeTable)
|
|
9848
|
+
return Promise.resolve(errRest)
|
|
9849
|
+
}
|
|
9850
|
+
} else if (newColumn.parentId) {
|
|
9851
|
+
// 根到子
|
|
9852
|
+
|
|
9853
|
+
if (!isCrossDrag) {
|
|
9854
|
+
handleColDragEndClearStatus($xeTable)
|
|
9855
|
+
return Promise.resolve(errRest)
|
|
9856
|
+
}
|
|
9857
|
+
if (oldAllMaps[newColumn.id]) {
|
|
9858
|
+
isSelfToChildStatus = true
|
|
9859
|
+
if (!(isCrossDrag && isSelfToChildDrag)) {
|
|
9860
|
+
if (VxeUI.modal) {
|
|
9861
|
+
VxeUI.modal.message({
|
|
9862
|
+
status: 'error',
|
|
9863
|
+
content: getI18n('vxe.error.treeDragChild')
|
|
9864
|
+
})
|
|
9865
|
+
}
|
|
9866
|
+
handleColDragEndClearStatus($xeTable)
|
|
9867
|
+
return Promise.resolve(errRest)
|
|
9868
|
+
}
|
|
9869
|
+
}
|
|
9870
|
+
} else {
|
|
9871
|
+
// 根到根
|
|
9872
|
+
}
|
|
9873
|
+
|
|
9874
|
+
const isDragToChildFlag = isSelfToChildDrag && dragToChildMethod ? dragToChildMethod(dragParams) : prevDragToChild
|
|
9875
|
+
return Promise.resolve(dragEndMethod ? dragEndMethod(dragParams) : true).then((status) => {
|
|
9876
|
+
if (!status) {
|
|
9877
|
+
return errRest
|
|
9833
9878
|
}
|
|
9834
9879
|
|
|
9835
9880
|
const oldewMatchRest = XEUtils.findTree(collectColumn as VxeTableDefines.ColumnInfo[], item => item.id === dragColumn.id)
|
|
@@ -9997,13 +10042,11 @@ const tableMethods: any = {
|
|
|
9997
10042
|
}).catch(() => {
|
|
9998
10043
|
return errRest
|
|
9999
10044
|
}).then((rest) => {
|
|
10000
|
-
|
|
10001
|
-
clearCrossTableDragStatus($xeTable)
|
|
10045
|
+
handleColDragEndClearStatus($xeTable)
|
|
10002
10046
|
return rest
|
|
10003
10047
|
})
|
|
10004
10048
|
}
|
|
10005
|
-
|
|
10006
|
-
clearCrossTableDragStatus($xeTable)
|
|
10049
|
+
handleColDragEndClearStatus($xeTable)
|
|
10007
10050
|
return Promise.resolve(errRest)
|
|
10008
10051
|
},
|
|
10009
10052
|
handleHeaderCellDragDragendEvent (evnt: DragEvent) {
|
|
@@ -10756,7 +10799,7 @@ const tableMethods: any = {
|
|
|
10756
10799
|
handleUpdateRowGroup($xeTable, confList.map(fieldOrColumn => {
|
|
10757
10800
|
return XEUtils.isString(fieldOrColumn) ? fieldOrColumn : fieldOrColumn.field
|
|
10758
10801
|
}))
|
|
10759
|
-
return loadTableData($xeTable, internalData.tableSynchData, true)
|
|
10802
|
+
return loadTableData($xeTable, internalData.tableSynchData, false, true)
|
|
10760
10803
|
}
|
|
10761
10804
|
return $xeTable.$nextTick()
|
|
10762
10805
|
},
|
|
@@ -10796,7 +10839,7 @@ const tableMethods: any = {
|
|
|
10796
10839
|
return $xeTable.$nextTick()
|
|
10797
10840
|
}
|
|
10798
10841
|
handleUpdateRowGroup($xeTable, [])
|
|
10799
|
-
return loadTableData($xeTable, internalData.tableSynchData, true)
|
|
10842
|
+
return loadTableData($xeTable, internalData.tableSynchData, false, true)
|
|
10800
10843
|
},
|
|
10801
10844
|
isRowGroupRecord (row: any) {
|
|
10802
10845
|
const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
|
|
@@ -12460,7 +12503,7 @@ const tableMethods: any = {
|
|
|
12460
12503
|
const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
|
|
12461
12504
|
const internalData = $xeTable as unknown as TableInternalData
|
|
12462
12505
|
|
|
12463
|
-
return loadTableData($xeTable, internalData.tableSynchData, true)
|
|
12506
|
+
return loadTableData($xeTable, internalData.tableSynchData, false, true)
|
|
12464
12507
|
},
|
|
12465
12508
|
updateZindex () {
|
|
12466
12509
|
if (this.zIndex) {
|
|
@@ -1601,7 +1601,7 @@ export default {
|
|
|
1601
1601
|
if (value && value.length >= 20000) {
|
|
1602
1602
|
warnLog('vxe.error.errLargeData', ['loadData(data), reloadData(data)'])
|
|
1603
1603
|
}
|
|
1604
|
-
this.loadTableData(value || [], true).then(() => {
|
|
1604
|
+
this.loadTableData(value || [], true, true).then(() => {
|
|
1605
1605
|
const { scrollXLoad, scrollYLoad, expandColumn } = reactData
|
|
1606
1606
|
const expandOpts = $xeTable.computeExpandOpts
|
|
1607
1607
|
this.inited = true
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|