diff --git a/packages/popper/src/popper/index.ts b/packages/popper/src/popper/index.ts index 748227787d..c4ceb2f077 100644 --- a/packages/popper/src/popper/index.ts +++ b/packages/popper/src/popper/index.ts @@ -160,6 +160,14 @@ export default function (props: IPopperOptions, { emit }: SetupContext onBlur?: (e: Event) => void } + function update() { + if (popperInstance) { + popperInstance.update() + } else { + initializePopper() + } + } + if (!isManualMode()) { const toggleState = () => { if (visibility.value) { @@ -236,18 +244,10 @@ export default function (props: IPopperOptions, { emit }: SetupContext popperInstance.update() }) - watch(visibility, () => { - if (popperInstance) { - popperInstance.update() - } else { - initializePopper() - } - }) + watch(visibility, update) return { - update() { - popperInstance.update() - }, + update, doDestroy, show, hide,