vxe-table 3.19.16 → 3.19.17

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.
@@ -3926,7 +3926,7 @@ function loadTableData($xeTable, datas, isReset) {
3926
3926
  handleRecalculateStyle($xeTable, false, true, true);
3927
3927
  updateRowOffsetTop($xeTable);
3928
3928
  updateTreeLineStyle($xeTable);
3929
- resolve();
3929
+ $xeTable.$nextTick(() => resolve());
3930
3930
  });
3931
3931
  } else {
3932
3932
  setTimeout(() => {
@@ -3934,7 +3934,7 @@ function loadTableData($xeTable, datas, isReset) {
3934
3934
  handleRecalculateStyle($xeTable, false, true, true);
3935
3935
  updateRowOffsetTop($xeTable);
3936
3936
  updateTreeLineStyle($xeTable);
3937
- resolve();
3937
+ $xeTable.$nextTick(() => resolve());
3938
3938
  });
3939
3939
  });
3940
3940
  }
@@ -4387,48 +4387,67 @@ function lazyScrollYData($xeTable) {
4387
4387
  loadScrollYData($xeTable);
4388
4388
  }, fpsTime);
4389
4389
  }
4390
+ function handleSyncScroll($xeTable, isRollX, isRollY) {
4391
+ const reactData = $xeTable;
4392
+ const internalData = $xeTable;
4393
+ const {
4394
+ scrollXLoad,
4395
+ scrollYLoad,
4396
+ isAllOverflow
4397
+ } = reactData;
4398
+ internalData.lcsRunTime = Date.now();
4399
+ internalData.lcsTimeout = undefined;
4400
+ internalData.intoRunScroll = false;
4401
+ internalData.inVirtualScroll = false;
4402
+ internalData.inWheelScroll = false;
4403
+ internalData.inHeaderScroll = false;
4404
+ internalData.inBodyScroll = false;
4405
+ internalData.inFooterScroll = false;
4406
+ reactData.lazScrollLoading = false;
4407
+ internalData.scrollRenderType = '';
4408
+ let xRest = null;
4409
+ let yRest = null;
4410
+ if (!isAllOverflow) {
4411
+ calcCellHeight($xeTable);
4412
+ updateRowOffsetTop($xeTable);
4413
+ }
4414
+ if (isRollX && scrollXLoad) {
4415
+ xRest = $xeTable.updateScrollXData();
4416
+ }
4417
+ if (isRollY && scrollYLoad) {
4418
+ yRest = $xeTable.updateScrollYData().then(() => {
4419
+ if (!isAllOverflow) {
4420
+ calcCellHeight($xeTable);
4421
+ updateRowOffsetTop($xeTable);
4422
+ }
4423
+ return $xeTable.updateScrollYSpace();
4424
+ });
4425
+ }
4426
+ updateRowExpandStyle($xeTable);
4427
+ return Promise.all([xRest, yRest, $xeTable.updateCellAreas()]);
4428
+ }
4390
4429
  function checkLastSyncScroll($xeTable, isRollX, isRollY) {
4391
4430
  const reactData = $xeTable;
4392
4431
  const internalData = $xeTable;
4393
4432
  const {
4394
4433
  lcsTimeout
4395
4434
  } = internalData;
4435
+ reactData.lazScrollLoading = true;
4396
4436
  if (lcsTimeout) {
4397
4437
  clearTimeout(lcsTimeout);
4398
4438
  }
4399
4439
  internalData.lcsTimeout = setTimeout(() => {
4400
- const {
4401
- scrollXLoad,
4402
- scrollYLoad,
4403
- isAllOverflow
4404
- } = reactData;
4405
- internalData.lcsRunTime = Date.now();
4406
- internalData.lcsTimeout = undefined;
4407
- internalData.intoRunScroll = false;
4408
- internalData.inVirtualScroll = false;
4409
- internalData.inWheelScroll = false;
4410
- internalData.inHeaderScroll = false;
4411
- internalData.inBodyScroll = false;
4412
- internalData.inFooterScroll = false;
4413
- internalData.scrollRenderType = '';
4414
- if (!isAllOverflow) {
4415
- calcCellHeight($xeTable);
4416
- updateRowOffsetTop($xeTable);
4417
- }
4418
- if (isRollX && scrollXLoad) {
4419
- $xeTable.updateScrollXData();
4420
- }
4421
- if (isRollY && scrollYLoad) {
4422
- $xeTable.updateScrollYData().then(() => {
4423
- if (!isAllOverflow) {
4424
- calcCellHeight($xeTable);
4425
- updateRowOffsetTop($xeTable);
4426
- }
4427
- $xeTable.updateScrollYSpace();
4428
- });
4429
- }
4430
- $xeTable.updateCellAreas();
4431
- }, 250);
4440
+ handleSyncScroll($xeTable, isRollX, isRollY).then(() => {
4441
+ if (reactData.scrollXLoad || reactData.scrollYLoad) {
4442
+ $xeTable.$nextTick(() => {
4443
+ updateRowExpandStyle($xeTable);
4444
+ if (!internalData.lcsTimeout) {
4445
+ handleSyncScroll($xeTable, isRollX, isRollY);
4446
+ }
4447
+ });
4448
+ }
4449
+ });
4450
+ }, 200);
4432
4451
  }
4433
4452
  const getWheelSpeed = lastScrollTime => {
4434
4453
  let multiple = 1;
@@ -10352,6 +10371,8 @@ const Methods = {
10352
10371
  return errRest;
10353
10372
  });
10354
10373
  }
10374
+ clearRowDragData($xeTable);
10375
+ clearCrossTableDragStatus($xeTable);
10355
10376
  return Promise.resolve(errRest);
10356
10377
  },
10357
10378
  handleCrossTableRowDragCancelEvent() {
@@ -10892,6 +10913,8 @@ const Methods = {
10892
10913
  const isDragToChildFlag = isSelfToChildDrag && dragToChildMethod ? dragToChildMethod(dragParams) : prevDragToChild;
10893
10914
  return Promise.resolve(dragEndMethod ? dragEndMethod(dragParams) : true).then(status => {
10894
10915
  if (!status) {
10916
+ clearColDragData($xeTable);
10917
+ clearCrossTableDragStatus($xeTable);
10895
10918
  return errRest;
10896
10919
  }
10897
10920
  let dragTargetColumn = null;
@@ -11146,6 +11169,8 @@ const Methods = {
11146
11169
  return errRest;
11147
11170
  });
11148
11171
  }
11172
+ clearColDragData($xeTable);
11173
+ clearCrossTableDragStatus($xeTable);
11149
11174
  return Promise.resolve(errRest);
11150
11175
  },
11151
11176
  handleHeaderCellDragDragendEvent(evnt) {
@@ -13422,7 +13447,7 @@ const Methods = {
13422
13447
  $xeGanttView.handleUpdateSYSpace();
13423
13448
  }
13424
13449
  return $xeTable.$nextTick().then(() => {
13425
- updateStyle($xeTable);
13450
+ return updateStyle($xeTable);
13426
13451
  });
13427
13452
  },
13428
13453
  updateScrollYStatus() {