Из каких этапов состоит жизненный цикл компонента во Vue и что происходит на каждом этапе?
Жизненный цикл
Жизненный цикл компонента Vue — последовательность этапов от создания до удаления, у каждого есть свой хук.
Этапы
- Создание (
beforeCreate→created; в Composition API это самsetup) — инициализируются props, реактивные данные, computed. DOM ещё нет. - Монтирование (
beforeMount→mounted/onMounted) — шаблон компилируется в render-функцию, создаётся DOM и вставляется на страницу. - Обновление (
beforeUpdate→updated/onUpdated) — при изменении реактивных данных компонент перерисовывается. - Размонтирование (
beforeUnmount→unmounted/onUnmounted) — компонент удаляется, здесь снимают слушатели и таймеры.
import { onMounted, onUnmounted } from 'vue';
onMounted(() => window.addEventListener('resize', onResize));
onUnmounted(() => window.removeEventListener('resize', onResize));Для <KeepAlive> есть ещё activated и deactivated.
Коротко для собеседования
Создание (данные готовы, DOM нет) → монтирование (DOM готов) → обновления → размонтирование (очистка ресурсов).
Подробнее: Vue — хуки жизненного цикла