-
Урок 1.
00:04:20
Об этом курсе
-
Урок 2.
00:05:22
Что такое React
-
Урок 3.
00:10:21
Первое React приложение
-
Урок 4.
00:06:18
Настройка среды разработки
-
Урок 5.
00:05:42
Как скачать код примеров
-
Урок 6.
00:06:05
Современный JavaScript и его версии
-
Урок 7.
00:02:50
Введение - как использовать этот раздел
-
Урок 8.
00:06:11
Ключевые слова let и const
-
Урок 9.
00:11:45
Arrow-функции
-
Урок 10.
00:05:40
Параметры по-умолчанию
-
Урок 11.
00:04:15
Rest параметр
-
Урок 12.
00:04:18
Spread оператор для массивов
-
Урок 13.
00:12:55
Деструктуризация объектов
-
Урок 14.
00:09:27
Деструктуризация массивов
-
Урок 15.
00:04:33
Шаблонные строки (template strings)
-
Урок 16.
00:07:37
Объекты
-
Урок 17.
00:03:49
Оператор Object Spread
-
Урок 18.
00:14:20
Прототипы
-
Урок 19.
00:09:18
Классы
-
Урок 20.
00:07:20
Свойства классов (class properties)
-
Урок 21.
00:11:29
Модули в JavaScript
-
Урок 22.
00:05:01
Каким будет наш первый проект
-
Урок 23.
00:08:09
Создаём пустой React проект
-
Урок 24.
00:11:06
React элементы
-
Урок 25.
00:06:32
React компоненты
-
Урок 26.
00:14:20
JSX
-
Урок 27.
00:04:20
Упражнение - Code Review 1
-
Урок 28.
00:08:52
Структура React проекта (часть 1)
-
Урок 29.
00:07:22
Props - свойства компонентов
-
Урок 30.
00:10:32
Массивы, как свойства компонентов
-
Урок 31.
00:10:50
Коллекции и ключи
-
Урок 32.
00:14:37
Как импортировать css
-
Урок 33.
00:08:10
Структура React проекта - часть 2
-
Урок 34.
00:08:00
Компоненты-классы
-
Урок 35.
00:11:37
Обработка событий
-
Урок 36.
00:05:36
State - состояние React компонента
-
Урок 37.
00:04:32
Как работает setState()
-
Урок 38.
00:05:26
Обновление состояние, зависящее от предыдущего состояния
-
Урок 39.
00:07:43
Собственные события
-
Урок 40.
00:11:38
setState() - удаление элемента
-
Урок 41.
00:14:42
setState() - добавление элемента
-
Урок 42.
00:07:57
Данные в React приложении
-
Урок 43.
00:15:46
setState() - редактирование элементов
-
Урок 44.
00:09:31
Работа с формами
-
Урок 45.
00:04:12
Контролируемые компоненты
-
Урок 46.
00:01:54
Как использовать этот раздел
-
Урок 47.
00:09:09
Реализуем поиск
-
Урок 48.
00:13:08
Реализуем фильтры
-
Урок 49.
00:03:03
Каким будет наш следующий проект
-
Урок 50.
00:05:16
Создаём пустой проект
-
Урок 51.
00:03:28
Выбор HTTP API для браузера
-
Урок 52.
00:05:51
Как работает Fetch API
-
Урок 53.
00:04:16
Обработка ошибок в Fetch API
-
Урок 54.
00:07:21
Создаём клиент для API
-
Урок 55.
00:06:51
Создаём компоненты StarDB
-
Урок 56.
00:09:48
Компонент, который получает данные из API
-
Урок 57.
00:11:28
Трансформация данных API
-
Урок 58.
00:04:21
Создаём индикатор загрузки
-
Урок 59.
00:08:39
Логика индикатора загрузки
-
Урок 60.
00:08:59
Обработка ошибок сети в компоненте
-
Урок 61.
00:05:25
Работа с API - выводы
-
Урок 62.
00:07:07
Зачем компонентам "жизненный цикл"?
-
Урок 63.
00:06:00
Методы жизненного цикла
-
Урок 64.
00:02:39
componentDidMount()
-
Урок 65.
00:08:03
Используем на практике componentDidMount()
-
Урок 66.
00:02:08
componentDidUpdate()
-
Урок 67.
00:07:51
Используем на практике componentDidUpdate()
-
Урок 68.
00:02:20
componentWillUnmount()
-
Урок 69.
00:10:41
componentDidCatch()
-
Урок 70.
00:09:11
Используем componentDidCatch() на практике
-
Урок 71.
00:04:07
Паттерны React - введение
-
Урок 72.
00:09:22
Использование функций
-
Урок 73.
00:07:15
Render-функции
-
Урок 74.
00:06:56
Свойства-элементы
-
Урок 75.
00:08:45
Children
-
Урок 76.
00:09:16
Практика - рефакторинг компонента
-
Урок 77.
00:09:43
Работа с props.children
-
Урок 78.
00:05:17
Клонирование элементов
-
Урок 79.
00:12:51
Компоненты высшего порядка (HOC)
-
Урок 80.
00:12:11
Рефакторинг компонентов
-
Урок 81.
00:08:32
Композиция компонентов высшего порядка
-
Урок 82.
00:06:34
Контекст
-
Урок 83.
00:09:47
Использование Context API
-
Урок 84.
00:07:04
Использование HOC для работы с контекстом
-
Урок 85.
00:12:26
Трансформация props в компонентах высшего порядка
-
Урок 86.
00:12:53
Обновление контекста
-
Урок 87.
00:10:20
Рефакторинг: делаем код чище
-
Урок 88.
00:07:36
Рефакторинг компонентов высшего порядка (опциональный урок)
-
Урок 89.
00:11:24
Функция compose() (опциональный урок))
-
Урок 90.
00:06:14
Свойство defaultProps
-
Урок 91.
00:05:00
Свойство propTypes
-
Урок 92.
00:03:58
NPM - установка дополнительных пакетов
-
Урок 93.
00:07:28
Библиотеки prop-types
-
Урок 94.
00:06:57
Что такое React Hooks (хуки)
-
Урок 95.
00:02:29
Новый проект
-
Урок 96.
00:11:15
useState()
-
Урок 97.
00:02:51
useContext()
-
Урок 98.
00:11:04
useEffect()
-
Урок 99.
00:09:33
useEffect() - упражнения
-
Урок 100.
00:07:32
Использование useEffect() для загрузки данных
-
Урок 101.
00:02:28
Создание собственных хуков
-
Урок 102.
00:17:51
useCallback() и useMemo()
-
Урок 103.
00:03:50
Правила и ограничения хуков
-
Урок 104.
00:04:55
Что такое роутинг
-
Урок 105.
00:04:54
Основы react-router
-
Урок 106.
00:03:01
Link
-
Урок 107.
00:05:30
Как работает Route
-
Урок 108.
00:07:06
Динамические пути
-
Урок 109.
00:06:35
withRouter
-
Урок 110.
00:04:59
Относительные пути
-
Урок 111.
00:08:04
Опциональные параметры
-
Урок 112.
00:11:13
Авторизация и "закрытые" страницы
-
Урок 113.
00:07:16
Switch (обработка несуществующих адресов)
-
Урок 114.
00:10:15
Введение в Redux
-
Урок 115.
00:03:33
Установка библиотек
-
Урок 116.
00:07:04
Reducer
-
Урок 117.
00:04:28
Redux Store
-
Урок 118.
00:06:04
Чистые функции
-
Урок 119.
00:05:22
UI для Redux
-
Урок 120.
00:03:43
Действия с параметрами
-
Урок 121.
00:03:43
Action Creator
-
Урок 122.
00:01:59
Структура проекта
-
Урок 123.
00:08:50
bindActionCreators()
-
Урок 124.
00:08:48
Использование React и Redux
-
Урок 125.
00:11:03
react-redux и функция connect()
-
Урок 126.
00:08:06
Функция mapDispatchToProps()
-
Урок 127.
00:04:28
mapDispatchToProps в виде объекта
-
Урок 128.
00:02:30
Наш следующий проект
-
Урок 129.
00:03:35
Инициализация проекта
-
Урок 130.
00:05:29
Структура react+redux проекта
-
Урок 131.
00:09:34
Вспомогательные компоненты
-
Урок 132.
00:06:44
Redux компоненты
-
Урок 133.
00:08:01
Каркасc React-Redux приложения
-
Урок 134.
00:10:58
Роутинг
-
Урок 135.
00:04:38
Чтение данных из Redux Store
-
Урок 136.
00:12:04
Отправка действий в Redux Store (action dispatch)
-
Урок 137.
00:09:38
Стили (опциональное видео)
-
Урок 138.
00:07:49
Работа с асинхронными данными
-
Урок 139.
00:07:02
Отличия setState() и reducer
-
Урок 140.
00:07:45
Обработка ошибок
-
Урок 141.
00:07:07
mapDispatchToProps: аргумент ownProps
-
Урок 142.
00:04:21
Naming Convention для действий
-
Урок 143.
00:03:40
Компоненты-контейнеры
-
Урок 144.
00:10:33
Подключение нового компонента к Redux
-
Урок 145.
00:10:07
Redux: добавление элементов в массив
-
Урок 146.
00:13:43
Redux: обновление элементов в массиве
-
Урок 147.
00:12:17
Redux: удаление элементов из массива
-
Урок 148.
00:12:54
Организация кода reducer'а
-
Урок 149.
00:11:46
Store Enhancers
-
Урок 150.
00:09:51
Middleware
-
Урок 151.
00:11:41
Thunk
-
Урок 152.
00:02:59
Следующие шаги
-
Урок 153.
00:03:09
Сборка React приложения
-
Урок 154.
00:06:04
Создаём новый проект
-
Урок 155.
00:04:36
Установка Babel
-
Урок 156.
00:06:09
Плагины Babel
-
Урок 157.
00:04:20
Конфигурация Babel (.babelrc)
-
Урок 158.
00:06:55
Babel Presets
-
Урок 159.
00:09:10
Оптимизация сборки для конкретных браузеров
-
Урок 160.
00:05:55
Динамический выбор браузеров (browserslist)
-
Урок 161.
00:04:31
Файлы конфигурации browserslist
-
Урок 162.
00:07:33
Polyfills
-
Урок 163.
00:03:27
Работа с JSX
-
Урок 164.
00:02:32
Организация зависимостей
-
Урок 165.
00:04:44
Что такое WebPack
-
Урок 166.
00:07:31
Установка WebPack
-
Урок 167.
00:04:31
Файл конфигурации WebPack
-
Урок 168.
00:08:30
Webpack Loader
-
Урок 169.
00:04:26
Конфигурация loader'ов
-
Урок 170.
00:02:55
Loader'ы для разных типов файлов
-
Урок 171.
00:04:44
React и Babel Loader
-
Урок 172.
00:06:17
Композиция Loader'ов
-
Урок 173.
00:05:12
CSS препроцессоры. Sass.
-
Урок 174.
00:03:05
Упрощение синтаксиса webpack.config.js
-
Урок 175.
00:06:27
Плагины
-
Урок 176.
00:04:15
HtmlWebpackPlugin: использование шаблонов
-
Урок 177.
00:04:49
Mini CSS Extract Plugin
-
Урок 178.
00:08:10
Wepback Dev Server
-
Урок 179.
00:15:46
Конфигурация для production
Сейчас в основном хуками и функциональным программированием пользуются.
this.setState(({todoData}) => ({
todoData: [...todoData, newItem],
}));
а то Ментр ругатся будет )))
Посилання, яке необхідно добавити у функцію fetch змінилося!
https://swapi.dev/api/people/1/
const data = loading ? :
Можно ли чуточку оптимизировать код? Проверил, работает, но может я чего-то не учел?
Итак, вместо:
const spinner = loading ? : null;
const content = !loading ? : null
...
{spinner}
{content}
заменить на:
const data = loading ? :
...
{data}
Человек занимается отуплением своих учеников, а его код это - оверинжиниринг. (обертка - обертка -обертка - чтоб обертка....)
Да молодец, что рассказывает про базовые функции с примерами, но их применение это ппц.
Читайте лучше оф.доку
toggleProperty(arr, id, prop) {
const item = arr.find(element => element.id === id);
const data = {...item, [prop]: !item[prop]};
return arr.map(todo => todo.id === id ? data : todo);
}
this.setState(({todoData}) => {
return {
todoData: todoData.filter(element => element.id !== id)
}
});
если ты об этом
filter вернет новый массив не мутируя старый.
toggleProp(arr, id, propName){
const idx = arr.findIndex((el) => el.id === id);
const oldItem = arr[idx];
-------> const newItem = {...oldItem, [propName]: [!oldItem.propName]};
console.log(newItem)
const newArray = [
...arr.slice(0, idx),
newItem,
...arr.slice(idx + 1)
]
console.log(newArray)
return newArray
}
Друзья, кто сталкивался?
Unhandled Rejection (TypeError): undefined is not an object (evaluating 'this._extractId')
return {
id: this._extractId(planet),
.......}
если ее закрыть содержимое сайта показывает, но при обновлении постоянно вылазит эта ошибка, кто с этим сталкивался??
спасибо
componentDidMount() {
this.swapiService
.getAllPeople()
.then((peopleList) => {
this.setState({
peopleList
});
});
}
У меня peopleList приходит undefined после запроса к апи, а почему - понять не могу
свапи переехал сюда https://swapi.dev/documentation#people
Где найти этот исходный код?