diff --git a/packages/components/dismissable-layer/src/DismissableLayer.ts b/packages/components/dismissable-layer/src/DismissableLayer.ts
index 3d5352717..2cd85bf64 100644
--- a/packages/components/dismissable-layer/src/DismissableLayer.ts
+++ b/packages/components/dismissable-layer/src/DismissableLayer.ts
@@ -13,8 +13,8 @@ import {
h,
mergeProps,
nextTick,
+ onBeforeUnmount,
onMounted,
- onUnmounted,
reactive,
ref,
toRefs,
@@ -269,7 +269,7 @@ const DismissableLayer = defineComponent({
document.addEventListener(INJECT_UPDATE, handleUpdate)
})
- onUnmounted(() => {
+ onBeforeUnmount(() => {
document.removeEventListener(INJECT_UPDATE, handleUpdate)
})
const originalReturn = () =>
diff --git a/packages/components/dismissable-layer/src/stories/DismissableLayerDemo.vue b/packages/components/dismissable-layer/src/stories/DismissableLayerDemo.vue
index 7b9fdce11..036392645 100644
--- a/packages/components/dismissable-layer/src/stories/DismissableLayerDemo.vue
+++ b/packages/components/dismissable-layer/src/stories/DismissableLayerDemo.vue
@@ -1,6 +1,6 @@
diff --git a/packages/components/popover/src/popoverContentModal.ts b/packages/components/popover/src/popoverContentModal.ts
index d767709cf..8b73fb328 100644
--- a/packages/components/popover/src/popoverContentModal.ts
+++ b/packages/components/popover/src/popoverContentModal.ts
@@ -1,4 +1,4 @@
-import { defineComponent, h, mergeProps, onUnmounted, ref } from 'vue'
+import { defineComponent, h, mergeProps, onBeforeUnmount, ref } from 'vue'
import { primitiveProps, propsOmit } from '@oku-ui/primitive'
import { useComposedRefs, useForwardRef, useScrollLock } from '@oku-ui/use-composable'
import { hideOthers } from 'aria-hidden'
@@ -47,10 +47,10 @@ const popoverContentModal = defineComponent({
const isRightClickOutsideRef = ref(false)
- onUnmounted(() => {
+ onBeforeUnmount(() => {
const content = contentRef.value
if (content)
- return hideOthers(content)
+ hideOthers(content)
})
useScrollLock(contentRef, true)
diff --git a/packages/components/popper/src/stories/WithUpdatePositionStrategyAlways.vue b/packages/components/popper/src/stories/WithUpdatePositionStrategyAlways.vue
index 8cca29f79..b35276e83 100644
--- a/packages/components/popper/src/stories/WithUpdatePositionStrategyAlways.vue
+++ b/packages/components/popper/src/stories/WithUpdatePositionStrategyAlways.vue
@@ -6,7 +6,7 @@ import {
OkuPopperContent,
} from '@oku-ui/popper'
import { OkuPortal } from '@oku-ui/portal'
-import { onMounted, onUnmounted, ref } from 'vue'
+import { onBeforeUnmount, onMounted, ref } from 'vue'
import Scrollable from './Scrollable.vue'
// const [left, setLeft] = React.useState(0);
@@ -27,7 +27,7 @@ onMounted(() => {
}, 500)
})
-onUnmounted(() => {
+onBeforeUnmount(() => {
if (intervalId)
clearInterval(intervalId)
})
diff --git a/packages/components/presence/src/usePresence.ts b/packages/components/presence/src/usePresence.ts
index 9df15fd24..5c4fd0243 100644
--- a/packages/components/presence/src/usePresence.ts
+++ b/packages/components/presence/src/usePresence.ts
@@ -1,4 +1,4 @@
-import { type Ref, computed, nextTick, onUnmounted, ref, watch } from 'vue'
+import { type Ref, computed, nextTick, onBeforeUnmount, ref, watch } from 'vue'
import { useStateMachine } from './useStateMachine'
function getAnimationName(styles?: CSSStyleDeclaration) {
@@ -117,7 +117,7 @@ export function usePresence(present: Ref) {
immediate: true,
})
- onUnmounted(() => {
+ onBeforeUnmount(() => {
elWatch()
presentWatch()
})
diff --git a/packages/components/tooltip/src/tooltip.ts b/packages/components/tooltip/src/tooltip.ts
index f2451e203..e47bb2f8b 100644
--- a/packages/components/tooltip/src/tooltip.ts
+++ b/packages/components/tooltip/src/tooltip.ts
@@ -1,5 +1,5 @@
import type { PropType, Ref } from 'vue'
-import { computed, defineComponent, h, onUnmounted, ref, toRefs, useModel } from 'vue'
+import { computed, defineComponent, h, onBeforeUnmount, ref, toRefs, useModel } from 'vue'
import { primitiveProps } from '@oku-ui/primitive'
import { useControllable, useId } from '@oku-ui/use-composable'
import { OkuPopper } from '@oku-ui/popper'
@@ -156,7 +156,7 @@ const tooltip = defineComponent({
}, delayDuration.value)
}
- onUnmounted(() => {
+ onBeforeUnmount(() => {
window.clearTimeout(openTimerRef.value)
})
diff --git a/packages/components/tooltip/src/tooltipProvider.ts b/packages/components/tooltip/src/tooltipProvider.ts
index ebcfaefb5..6df98db93 100644
--- a/packages/components/tooltip/src/tooltipProvider.ts
+++ b/packages/components/tooltip/src/tooltipProvider.ts
@@ -1,5 +1,5 @@
import type { Ref } from 'vue'
-import { defineComponent, onMounted, onUnmounted, ref, toRefs } from 'vue'
+import { defineComponent, onBeforeUnmount, onMounted, ref, toRefs } from 'vue'
import { DEFAULT_DELAY_DURATION, createTooltipProvide } from './utils'
import { scopeTooltipProps } from './types'
@@ -79,7 +79,7 @@ const tooltipProvider = defineComponent({
skipDelayTimer.value = skipDelayTimerRef.value
})
- onUnmounted(() => {
+ onBeforeUnmount(() => {
window.clearTimeout(skipDelayTimer.value)
})
diff --git a/packages/core/use-composable/src/useSize.ts b/packages/core/use-composable/src/useSize.ts
index 8ad60f1cd..bfec056b5 100644
--- a/packages/core/use-composable/src/useSize.ts
+++ b/packages/core/use-composable/src/useSize.ts
@@ -1,7 +1,7 @@
///
import type { Ref } from 'vue'
-import { onUnmounted, ref, watch } from 'vue'
+import { onBeforeUnmount, ref, watch } from 'vue'
interface Size {
width: number
@@ -53,7 +53,7 @@ function useSize(element: Ref) {
}
})
- onUnmounted(() => {
+ onBeforeUnmount(() => {
if (element.value)
resizeObserver.value?.unobserve(element.value)
})