onBeforeUnmount — before destruction. onUnmounted — after destruction.
1import { onBeforeUnmount, onUnmounted, ref } from "vue"23export default {4 setup() {5 const interval = ref(null)67 onBeforeUnmount(() => {8 console.log("Before destroy")9 // Component still exists10 })1112 onUnmounted(() => {13 console.log("After destroy")14 clearInterval(interval.value)15 })1617 onMounted(() => {18 interval.value = setInterval(() => {}, 1000)19 })2021 return { }22 }23}
Key differences: