From 9cbb2f56fa76fc66c913cdd126f387c5ae63cba5 Mon Sep 17 00:00:00 2001 From: acyza <101238421+acyza@users.noreply.github.com> Date: Sun, 12 Feb 2023 09:52:50 +0800 Subject: [PATCH] fix(Popover): should update location after transition (#11568) * fix(popover): location update * fix(popover): update --- packages/vant/src/popover/Popover.tsx | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/packages/vant/src/popover/Popover.tsx b/packages/vant/src/popover/Popover.tsx index 6301e6a58..39682aab8 100644 --- a/packages/vant/src/popover/Popover.tsx +++ b/packages/vant/src/popover/Popover.tsx @@ -17,6 +17,7 @@ import { Instance, createPopper, offsetModifier } from '@vant/popperjs'; import { pick, extend, + inBrowser, truthProp, numericProp, unknownProp, @@ -137,6 +138,10 @@ export default defineComponent({ if (!popper) { popper = createPopperInstance(); + if (inBrowser) { + window.addEventListener('animationend', updateLocation); + window.addEventListener('transitionend', updateLocation); + } } else { popper.setOptions(getPopoverOptions()); } @@ -217,6 +222,10 @@ export default defineComponent({ onBeforeUnmount(() => { if (popper) { + if (inBrowser) { + window.removeEventListener('animationend', updateLocation); + window.removeEventListener('transitionend', updateLocation); + } popper.destroy(); popper = null; }