From 074e82700ed176a4bdd30ce0e14e7e46cbc8902b Mon Sep 17 00:00:00 2001 From: Rainbow <1256734885@qq.com> Date: Sat, 22 Nov 2025 15:54:29 +0800 Subject: [PATCH] fix(components): [select-v2] ResizeObserver loop completed with undelivered notifications (#22895) fix: ResizeObserver loop completed with undelivered notifications --- packages/components/select-v2/src/useSelect.ts | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/packages/components/select-v2/src/useSelect.ts b/packages/components/select-v2/src/useSelect.ts index 236eb55f93..0886a3e808 100644 --- a/packages/components/select-v2/src/useSelect.ts +++ b/packages/components/select-v2/src/useSelect.ts @@ -975,11 +975,24 @@ const useSelect = (props: SelectV2Props, emit: SelectV2EmitFn) => { }) useResizeObserver(selectRef, handleResize) useResizeObserver(selectionRef, resetSelectionWidth) - useResizeObserver(menuRef, updateTooltip) useResizeObserver(wrapperRef, updateTooltip) useResizeObserver(tagMenuRef, updateTagTooltip) useResizeObserver(collapseItemRef, resetCollapseItemWidth) + // #21498 + let stop: (() => void) | undefined + watch( + () => dropdownMenuVisible.value, + (newVal) => { + if (newVal) { + stop = useResizeObserver(menuRef, updateTooltip).stop + } else { + stop?.() + stop = undefined + } + } + ) + return { // data exports inputId,