Что такое SPA?
Продвинутые темы
SPA (Single Page Application) — это веб-приложение, работающее на одной HTML-странице: контент обновляется динамически через JavaScript без полной перезагрузки страницы.
Как работает
Сервер отдаёт один HTML и бандл JS. Дальше приложение само управляет отображением: при навигации не запрашивает новую страницу, а меняет DOM и подгружает только данные (через API).
Первая загрузка → HTML + JS
Навигация → JS меняет контент, fetch данных (без перезагрузки)Плюсы
- Быстрые переходы между экранами (без перезагрузки).
- Отзывчивость — как у нативного приложения.
- Чёткое разделение фронта и бэка (API).
Минусы
- Медленный первый показ — нужно загрузить и выполнить JS.
- SEO — контент рисуется JS (решается SSR/пререндером).
- Больше нагрузки на браузер, управление состоянием и роутингом на клиенте.
Инструменты
React, Vue, Angular + клиентский роутинг (React Router). Для SEO/скорости — SSR (Next.js/Nuxt).
SPA против MPA
MPA — много страниц, каждая грузится с сервера. SPA — одна страница, динамика на клиенте.
Коротко для собеседования
SPA — приложение на одной странице: контент обновляется через JS без перезагрузки, навигация — клиентский роутинг, данные — через API. Плюсы: быстрые переходы и отзывчивость; минусы: медленный первый показ и SEO (решается SSR).