Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про JavaScript: server, side, rendering

Какие хуки жизненного цикла Vue выполняются на серверной стороне?

Вопрос проверяет понимание server-side rendering во Vue и различий между серверным и клиентским жизненным циклом компонентов.

Короткий ответ

При серверном рендеринге Vue выполняются не все хуки жизненного цикла. Хуки, связанные с DOM, на сервере не вызываются. Обычно выполняются хуки до монтирования, такие как beforeCreate и created. Это связано с тем, что на сервере отсутствует реальный DOM. Понимание этого важно при разработке SSR-приложений.

Длинный ответ

При использовании SSR компонент Vue проходит упрощённый жизненный цикл, так как рендеринг происходит в среде без браузера.

Общий принцип SSR

На сервере:

  • Нет доступа к DOM

  • Компонент рендерится в строку HTML

  • Выполняется только логика, не зависящая от браузера

Хуки, которые выполняются на сервере

На серверной стороне доступны только хуки, не требующие DOM.

  1. beforeCreate

    • Компонент создаётся

    • Данные ещё не инициализированы

  2. created

    • Реактивные данные доступны

    • Можно выполнять подготовку данных

    • Часто используется для загрузки данных

Хуки, которые не выполняются

Следующие хуки не вызываются при SSR:

  • beforeMount

  • mounted

  • beforeUpdate

  • updated

  • beforeUnmount

  • unmounted

Причина заключается в отсутствии этапов монтирования и обновления DOM.

Практические последствия

  • Запросы данных для SSR размещают в created

  • Любая работа с window, document или DOM запрещена

  • Логика, зависящая от браузера, должна быть перенесена в клиентские хуки

Вывод

На серверной стороне Vue выполняет только хуки инициализации, что требует аккуратного разделения логики между сервером и клиентом.

Уровень

  • Рейтинг:

    3

  • Сложность:

    6

Навыки

  • JavaScript

    JavaScript

Ключевые слова

#server

#side

#rendering

Подпишись на React Developer в телеграм