Перейти к содержанию

React: учебный каталог

Соберём отдельное учебное приложение «Профессор Веб»: каталог текстовых карточек о HTML, CSS и JavaScript. Начнём с JSX и компонентов, затем добавим фильтр, локальную подборку, чтение API, подробную страницу и форму. Закончим созданием и удалением записей с явной обработкой ошибок и неизвестного результата.

Нужны основы HTML, CSS и JavaScript: функции, массивы, ES-модули и Promise. Все данные придуманы для примера. Это самостоятельный учебный проект, который не меняет публичную статическую библиотеку ProfessorWeb.

Компоненты и локальное состояние

  1. React и исходный проект
  2. JSX в React: данные карточки каталога
  3. React: компоненты и общие стили
  4. События и состояние в React
  5. Списки и React DevTools
  6. Props в React: повторное использование компонента
  7. React: обратные вызовы между компонентами
  8. Эффекты в React: зависимости и обновление данных

API и адреса экранов

  1. React: локальный API и первая загрузка
  2. React: загрузка, пустой список и ошибки
  3. Собственный хук React: загрузка и отмена запросов
  4. React: маршруты и ссылки приложения
  5. React: параметр адреса и подробная карточка

Форма и изменение данных

  1. Управляемая форма React: ввод и submit
  2. React: создание записи и переход
  3. React: удаление, отсутствующая запись и границы SPA

Материалы и выбранные версии

Скачать исходники курса. Архив содержит полные последовательные снимки lesson-01/after — lesson-16/after, удобную копию final, описания входов и ожидаемых результатов. Следующий урок начинается с предыдущего снимка; не нужно собирать проект из несогласованных фрагментов разных этапов.

Выбранный профиль: React и React DOM 19.3.0, Vite 8.3.4, @vitejs/plugin-react 6.1.2, React Router 8.4.0 в declarative mode, Node 24.21.0 LTS. Версии сверены по первичным источникам 11 октября 2026 года. Зависимости не устанавливались, lockfile не создавался. Исходники, API, браузерные сценарии, тесты и сборка не исполнялись; описанные результаты являются ожидаемыми.

С девятого урока используется собственный минимальный Node HTTP fixture на loopback. Данные хранятся в памяти и сбрасываются при перезапуске. Авторизации, базы, идемпотентности, production-развёртывания и SSR в пакете нет. Клиентская SPA не обещает поисковую полноту без отдельного серверного решения.

Все серии · Практические проекты · Frontend