> В чем разница хуков mounted и beforeMount во Vue (Vue.js)

Уровень: senior · Роль: frontend · Категория: Технические вопросы

Компании: ЛОЦИЯ, Библио-Глобус

Стек: Vue.js

> Пример ответа

mounted и beforeMount - это хуки жизненного цикла компонента Vue, которые вызываются на этапе монтирования, но в разные моменты.

beforeMount срабатывает сразу после того, как шаблон (template) компонента был скомпилирован в render-функции, но до того, как реальный DOM будет создан и вставлен в документ. На этом этапе у вас нет доступа к элементам компонента через $el - он ещё не существует.

mounted вызывается после того, как компонент был смонтирован в DOM. Здесь $el уже доступен, и вы можете взаимодействовать с реальными DOM-узлами, подписываться на события, инициализировать сторонние библиотеки, требующие наличия DOM (например, графики или карусели).

Ключевое отличие: beforeMount - подготовка перед рендерингом (нет DOM), mounted - работа с уже отрисованным DOM.

Пример:

JAVASCRIPT
export default {
beforeMount() {
console.log(this.$el); // undefined
},
mounted() {
console.log(this.$el); // <div>...</div>
}
}

> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?

Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью