5,000 ₽

Книга, игра и упражнения — бесплатно. Видеоуроки — после оплаты.

Читать книгу Интерактивная игра
Перейти в корзину

30-дневная гарантия возврата денег

Курс включает

  • Пожизненный доступ
  • Доступ с мобильных устройств
  • Сертификат об окончании

Преимущества обучения

  • Обучение в удобное время из любой точки мира
  • Доступ к материалам курса в течение неограниченного времени
  • Практические задания после каждого урока для закрепления материала
  • Поддержка преподавателя на протяжении всего обучения
  • Сертификат о прохождении курса после успешного завершения
  • Возможность общаться с другими студентами в чате курса

Описание курса

Освойте React: JSX, хуки, Router, Context, Zustand и создание современных SPA.

Содержание книги

Всего: 15 глав

Книга, игра и упражнения доступны без регистрации. Видеоуроки — после оплаты курса.

React — JavaScript-библиотека для построения пользовательских интерфейсов. Разработана Facebook (Meta), основана на компонентах и декларативном подходе: вы описываете, как UI должен выглядеть при заданном state.React исп...
Точка входа main.jsx: createRoot из react-dom/client монтирует приложение в #root. StrictMode в dev помогает находить побочные эффекты и устаревшие API.App.jsx — корневой компонент. index.html содержит <div id="r...
JSX похож на HTML, но это JavaScript: className вместо class, htmlFor вместо for. Выражения в { }. Один корневый элемент или Fragment <>...</>.Компонент — функция с именем с заглавной буквы: function Button()...
Props — аргументы компонента, передаются как атрибуты: <UserCard name="Ann" age={25} />. Внутри: function UserCard({ name, age }) или props.name.Props только для чтения — не мутируйте их. children — вложе...
State — локальные данные компонента, при изменении вызывают ре-рендер. useState(initial) возвращает [value, setValue].Обновление: setCount(count + 1) или функциональная форма setCount(c => c + 1) при зависимости от пр...
События в camelCase: onClick, onChange, onSubmit. Передаёте функцию: onClick={handleClick}, не строку как в HTML.Синтетическое событие React оборачивает нативное. e.preventDefault() на форме. Передача аргумента: onClick=...
Controlled components: value={text} onChange={e => setText(e.target.value)}. React контролирует значение поля.Checkbox: checked={agree} onChange={...}. Select: value={city} onChange={...}. Несколько полей — один объек...
Списки рендерят через array.map(): items.map(item => <li key={item.id}>{item.name}</li>). key должен быть стабильным и уникальным среди соседей.Индекс как key — только если список статичен и не переупорядо...
useEffect(() => { ... }, [deps]) — побочные эффекты: fetch, подписки, таймеры. Пустой [] — только при монтировании. Без deps — после каждого рендера (осторожно).Cleanup: return () => clearInterval(id) в useEffect —...
Custom hook — функция useXxx(), внутри которой вызываются другие хуки. Переиспользует логику между компонентами: useFetch, useLocalStorage, useDebounce.Правила хуков: вызывать только на верхнем уровне, не в if/циклах. Им...
react-router-dom: BrowserRouter, Routes, Route, Link, useNavigate, useParams. SPA без перезагрузки страницы.path="/user/:id" — параметр через useParams(). Вложенные маршруты: Route с element и children routes....
createContext(defaultValue) + Provider + useContext — передача данных вглубь без prop drilling. Подходит для темы, языка, авторизации.Value на Provider должен быть стабильным или мемоизированным (useMemo), иначе лишние р...
Локальный state — useState/useReducer. Глобальный — Context, Redux Toolkit, Zustand, Jotai.Redux Toolkit: createSlice, configureStore, useSelector, useDispatch — предсказуемый поток данных. Zustand — минималистичный API...
Загрузка в useEffect или React Query / SWR. Состояния: loading, error, data. async в useEffect: отдельная async function внутри.Отмена запроса: AbortController. POST: fetch(url, { method: 'POST', headers, body:...
npm run build — минифицированный bundle в dist/. Vite использует Rollup. Переменные: import.meta.env.VITE_*.Деплой dist на Netlify, Vercel, GitHub Pages. base в vite.config для подпапки. React 18+ createRoot уже в шаблон...

Интерактивная игра

Финальный тест в формате Duolingo: 225 вопросов по всем темам курса.

Начать игру

Отзывы

Пока нет отзывов. Станьте первым!

Оставить отзыв

Чтобы оставить отзыв, войдите в личный кабинет.