onBeforeMount — before DOM insertion. onMounted — after DOM insertion.
1import { onBeforeMount, onMounted, ref } from "vue"23export default {4 setup() {5 const el = ref(null)67 onBeforeMount(() => {8 console.log("Before mount")9 // el.value is null10 })1112 onMounted(() => {13 console.log("After mount")14 // el.value is DOM element15 })1617 return { el }18 }19}
Key differences: