From dedef3c8dcb707fd64a0eb040566c2f0619775c0 Mon Sep 17 00:00:00 2001 From: Gimmy <975402925@qq.com> Date: Thu, 26 Jun 2025 14:42:02 +0800 Subject: [PATCH] fix(grid): fix drag error when tbody not render --- packages/vue/src/grid/src/body/src/body.tsx | 28 ++++++++++----------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/packages/vue/src/grid/src/body/src/body.tsx b/packages/vue/src/grid/src/body/src/body.tsx index be46325b3d..e025570178 100644 --- a/packages/vue/src/grid/src/body/src/body.tsx +++ b/packages/vue/src/grid/src/body/src/body.tsx @@ -750,6 +750,19 @@ export default defineComponent({ hooks.watch(body, (body) => body && resizeObserver.observe(body)) + hooks.watch(tbody, (tbody) => { + if (tbody && $table.dropConfig) { + // 初始化行列拖拽 + const { plugin, row = true, column = true, scheme } = $table.dropConfig + + plugin && row && (vm.rowSortable = $table.rowDrop(body.value)) + + if (scheme !== 'v2') { + plugin && column && (vm.columnSortable = $table.columnDrop(body.value)) + } + } + }) + hooks.watch(customFooter, (customFooter) => customFooter && resizeObserver.observe(customFooter)) hooks.watchEffect(() => { @@ -767,21 +780,6 @@ export default defineComponent({ vm._throttleScrollHandler = throttle($table.optimizeOpts.scrollDelay, vm.handleScroll) body.value?.addEventListener('scroll', vm._throttleScrollHandler) - - // 初始化行列拖拽 - setTimeout(() => { - const { dropConfig } = $table - - if (dropConfig) { - const { plugin, row = true, column = true, scheme } = dropConfig - - plugin && row && (vm.rowSortable = $table.rowDrop(body.value)) - - if (scheme !== 'v2') { - plugin && column && (vm.columnSortable = $table.columnDrop(body.value)) - } - } - }, 50) }) hooks.onBeforeUnmount(() => {