React Redux + Saga. Практический Курс

  Рет қаралды 232,406

Владилен Минин

Владилен Минин

4 жыл бұрын

Исходники лежат тут: t.me/js_by_vladilen/157
Получить профессию Frontend разработчика - bit.ly/3NslXne
Подробнее узнать об обучении в Result School -
bit.ly/3A9TyiL
Бесплатный курс HTML & CSS - bit.ly/3a3mXR0
Сделать 5 проектов на JavaScript - bit.ly/3by6kx9
Я в соц сетях:
Telegram: t.me/js_by_vladilen
VK: vladilen.minin
Instagram: / vladilen.minin
Мои паблики по JavaScript:
Telegram: t.me/result_school_it
VK: result.school
Instagram: / result.scho. .
JavaScript cообщества:
Discord: / discord
Telegram: t.me/js_by_vladilen_chat
Roadmap по каналу:
vladilen.notion.site/Roadmap-...
React Redux. В одном видео вы увидите использование React + Redux + Redux Saga на практике. В ролике увидите создание приложения с нуля и работу с формами, загрузкой данных с сервера, работу с DevTools и плотную работу с Redux Store. На выходе получите алгоритм приложения, описывающий поведение большинства Frontend приложений
Дополнительные ролики для комфортного прохождения курса:
Курс по Redux: • Redux Полный Курс
Полный курс ES6: • JavaScript ES6 - Полны...
Реакт Полный курс: • React JS Быстрый Курс
Генераторы: • Урок 11. JavaScript. Г...
Таймкоды
02:53 - npx create-react-app .
03:40 - подключаем bootstrap
07:05 - Что будет в проекте
08:00 - начальная разметка
09:00 - создаём компоненты
09:50 - компонент на классе
12:23 - компоненты на функциях
14:37 - передаём параметр в компонент-функцию
17:43 - проверка на передачу пустого массива в компонент
19:35 - event.preventDefault в форме
21:30 - добаляем динамики в форму
22:08 - универсальный обработчик для всех input в форме
23:25 - setState с ф-цией работающая с предыдущим состоянием
23:55 - динамически определяем по какому ключу в state необходиму поменять значение
24:22 - используем предыдущее состояние state
25:25 - event.persist()
26:35 - формируем новый объект поста
27:35 - очищаем поле input после submit
28:05 - взаимодействие между компонентами формы и постов
28:37 - в чем различия context и redux? context и хук useReducer разве не убивают Redux?
30:18 - установка redux
31:30 - подключение redux к проекту
31:50 - создаём store (createStore())
32:10 - rootReducer
32:50 - combineReducers()
33:17 - создание reducer
34:16 - initialState
35:17 - Provider (связываем react и redux)
37:00 - redux devtools extension
37:57 - compose()
38:57 - функционал добавления синхронного поста
39:48 - функция высокого порядка - connect() и умный компонент-функция
41:25 - хелпер ф-ции mapStateToProps
42:40 - преобразовываем необходимые поля state в нужные props для компонента
43:56 - как изменить состояние постов в state
44:18 - создаем логику изменения состояния в reducer
44:26 - types для actions
45:12 - дописываем функционал в reducer
45:35 - способы не мутирующие state: #1: concat(), #2: ...spread (51:25 - исправили ошибку)
47:25 - action creator
48:05 - dispatch action в компоненте
48:13 - connect() и компонент-класс
49:10 - хелпер mapDispatchToProps
54:08 - асинхронные посты
54:10 - redux-thunk (доп. пакет для работы с асинхронностью) является middleware
55:15 - applyMiddleware
56:31 - работа со множеством reducer'ов
57:18 - Pure Functions (Чистые функции)
58:00 - action с асинхронным кодом
59:50 - связь функционального компонента со стором через хуки
1:00:20 - useDispatch()
1:01:23 - useSelector()
1:02:48 - индикация лоадинга, reducer для разных нужд приложения
1:04:25 - добавляем лоадинг в компонет
1:05:40 - отдельный компонент лоадинг
1:06:23 - action для отображения/скрытия лоадера
1:07:30 - имитация задержки ответа сервера (setTimeout)
1:08:18 - создаём сообщения с warning
1:09:10 - состояние для warning в state
1:09:23 - types (типы) для warning
1:09:50 - обрабатываем types в reducer
1:09:28 - action для warning
1:11:06 - когда нужно вызывать action для warning
1:11:20 - присоединяем action к компоненту
1:12:00 - отдельный "глупый" компонент для warning
1:13:13 - присоединяем store для получения данных из него
1:13:58 - условие показывать или нет warning
1:14:25 - убираем warning через некоторое время
1:15:38 - обработка ошибок с сервера try...catch
1:16:55 - middleware - что это и как их создавать
1:17:14 - фильтруем слова при вводе заголовка поста
1:21:55 - saga (side effects)
1:23:40 - внедряем saga в проект
1:24:58 - npm install redux-saga
1:25:16 - redux/sagas.js
1:25:38 - импорт createSagaMiddleWare в index.js
1:26:16 - привязываем watcher к saga - saga.run()
1:26:40 - делаем ф-цию генератором
1:27:15 - takeEvery() (эффект из saga)
1:28:12 - sagaWorker()
1:28:50 - put() (эффект из saga)
1:29:14 - async ф-ция с fetch
1:29:52 - call() (эффект из saga)
1:31:26 - обработка ошибок в saga
React, Redux + Saga. Практический Курс
#react #redux #saga

Пікірлер: 470
@VladilenMinin
@VladilenMinin Жыл бұрын
Исходники лежат тут: t.me/js_by_vladilen/157 Получить профессию Frontend разработчика - bit.ly/3NslXne
@avkuznetsov54
@avkuznetsov54 4 жыл бұрын
Time code 02:53 - npx create-react-app . 03:40 - подключаем bootstrap 07:05 - Что будет в проекте 08:00 - начальная разметка 09:00 - создаём компоненты 09:50 - компонент на классе 12:23 - компоненты на функциях 14:37 - передаём параметр в компонент-функцию 17:43 - проверка на передачу пустого массива в компонент 19:35 - event.preventDefault в форме 21:30 - добаляем динамики в форму 22:08 - универсальный обработчик для всех input в форме 23:25 - setState с ф-цией работающая с предыдущим состоянием 23:55 - динамически определяем по какому ключу в state необходиму поменять значение 24:22 - используем предыдущее состояние state 25:25 - event.persist() 26:35 - формируем новый объект поста 27:35 - очищаем поле input после submit 28:05 - взаимодействие между компонентами формы и постов 28:37 - в чем различия context и redux? context и хук useReducer разве не убивают Redux? 30:18 - установка redux 31:30 - подключение redux к проекту 31:50 - создаём store (createStore()) 32:10 - rootReducer 32:50 - combineReducers() 33:17 - создание reducer 34:16 - initialState 35:17 - Provider (связываем react и redux) 37:00 - redux devtools extension 37:57 - compose() 38:57 - функционал добавления синхронного поста 39:48 - функция высокого порядка - connect() и умный компонент-функция 41:25 - хелпер ф-ции mapStateToProps 42:40 - преобразовываем необходимые поля state в нужные props для компонента 43:56 - как изменить состояние постов в state 44:18 - создаем логику изменения состояния в reducer 44:26 - types для actions 45:12 - дописываем функционал в reducer 45:35 - способы не мутирующие state: #1: concat(), #2: ...spread (51:25 - исправили ошибку) 47:25 - action creator 48:05 - dispatch action в компоненте 48:13 - connect() и компонент-класс 49:10 - хелпер mapDispatchToProps 54:08 - асинхронные посты 54:10 - redux-thunk (доп. пакет для работы с асинхронностью) является middleware 55:15 - applyMiddleware 56:31 - работа со множеством reducer'ов 57:18 - Pure Functions (Чистые функции) 58:00 - action с асинхронным кодом 59:50 - связь функционального компонента со стором через хуки 1:00:20 - useDispatch() 1:01:23 - useSelector() 1:02:48 - индикация лоадинга, reducer для разных нужд приложения 1:04:25 - добавляем лоадинг в компонет 1:05:40 - отдельный компонент лоадинг 1:06:23 - action для отображения/скрытия лоадера 1:07:30 - имитация задержки ответа сервера (setTimeout) 1:08:18 - создаём сообщения с warning 1:09:10 - состояние для warning в state 1:09:23 - types (типы) для warning 1:09:50 - обрабатываем types в reducer 1:09:28 - action для warning 1:11:06 - когда нужно вызывать action для warning 1:11:20 - присоединяем action к компоненту 1:12:00 - отдельный "глупый" компонент для warning 1:13:13 - присоединяем store для получения данных из него 1:13:58 - условие показывать или нет warning 1:14:25 - убираем warning через некоторое время 1:15:38 - обработка ошибок с сервера try...catch 1:16:55 - middleware - что это и как их создавать 1:17:14 - фильтруем слова при вводе заголовка поста 1:21:55 - saga (side effects) 1:23:40 - внедряем saga в проект 1:24:58 - npm install redux-saga 1:25:16 - redux/sagas.js 1:25:38 - импорт createSagaMiddleWare в index.js 1:26:16 - привязываем watcher к saga - saga.run() 1:26:40 - делаем ф-цию генератором 1:27:15 - takeEvery() (эффект из saga) 1:28:12 - sagaWorker() 1:28:50 - put() (эффект из saga) 1:29:14 - async ф-ция с fetch 1:29:52 - call() (эффект из saga) 1:31:26 - обработка ошибок в saga
@Iaxls
@Iaxls 4 жыл бұрын
Ты просто лучший
@puryganikita3975
@puryganikita3975 3 жыл бұрын
Святой человек
@Elator11777
@Elator11777 3 жыл бұрын
Добрый человек!
@user-dv4zq6gu7e
@user-dv4zq6gu7e 3 жыл бұрын
спасибо тебе добрый человек, и Владилену тоже
@nikitakalashnikov4587
@nikitakalashnikov4587 3 жыл бұрын
Дай боженька тебе здоровья
@VladilenMinin
@VladilenMinin 4 жыл бұрын
Вы просили React и Redux :) Напиши, что ещё хотел бы видеть в таком формате
@dispeltr1183
@dispeltr1183 4 жыл бұрын
react + redux + reselect
@MrAntonforce
@MrAntonforce 4 жыл бұрын
Честно говоря было бы полезно (ну думаю некоторым по крайней мере), увидеть небольшой туториал по работе с каким нибудь Google Firebase или похожими сервисами. Не у всех есть время/знания на реализацию базы руками, а какой-то обзор современных сервисов был бы очень кстати. К тому же в русско-язычном сегменте ничего толком нет.
@astrotrain
@astrotrain 4 жыл бұрын
А про Vue ничего не будет пока 3 версия не выйдет?
@ruslankorliakov2533
@ruslankorliakov2533 4 жыл бұрын
Хотелось бы еще пару видео на тему JS практики
@tender6795
@tender6795 4 жыл бұрын
Есть очень интересная библиотека immutable.js , которая отлично совмещается с реакт и редакс , но по ней мало инфы. Было б круто если б ты записал.
@nivaech
@nivaech 4 жыл бұрын
Владилен, у тебя отличный канал.Куча времени тратится за серфингом разных каналов, информация часто собирается по крупицам, а на твоем канале собрано как будто почти все, что необходимо, и при этом в полном объеме. За это спасибо.
@konjinni
@konjinni 4 жыл бұрын
кому интересно: вместо таймаута на задержку 1:07:30 можно выставить в консоли браузера сеть "slow 3G" и сайт "затормозит" - все спинеры закрутятся)
@oleawonder
@oleawonder 3 жыл бұрын
Владилен, большое тебе спасибо за видео! Включая твои ролики, я ни секунды не сомневаюсь, что пройду его до конца, что у меня будет результат, будут новые знания и офигенное ощущение, что я прокачиваюсь) Очень заметно как ты стараешься и выкладываешься по полной. Рада, что нашла твой канал!
@user-fc9bk1bk3z
@user-fc9bk1bk3z 4 жыл бұрын
Добрый день Владилен. Спасибо огромное за подобные видео. Все понятно и самое главное оч сжато!
@user-il1dr9wi8h
@user-il1dr9wi8h 3 жыл бұрын
Спасибо большое, Владилен! Узнал из этого курса много нового! Продолжаю изучать разработку по твоему каналу в частности.
@mrmagistr6958
@mrmagistr6958 3 жыл бұрын
Спасибо большое, Владилен. Очень нравятся твои курсы, нравится их подача и форма. Желаю успеха и процветания. Ты крут, так держать 😃
@Natali_Ship
@Natali_Ship 4 жыл бұрын
Спасибо) как раз на этом стеке работаю, будет интересно посмотреть, наверняка увижу что-то новое
@arinakysilova2510
@arinakysilova2510 4 жыл бұрын
Здравствуйте, очень нравятся ваши курсы! Как вариант хотела бы предложить идею сделать видео о сагах на более продвинутом уровне, о разных паттернах. Так как на ютубе очень мало уроков по сагам в принципе
@user-uj1vg6gq2e
@user-uj1vg6gq2e 4 жыл бұрын
Как раз то что нужно! Владилен, благодарю!
@andriiielagin2243
@andriiielagin2243 4 жыл бұрын
Владилен, спасибо тебе большое за данное видео! Было бы очень круто, если бы ты смог снять видео по продвинутой работе с сагами
@lindern6609
@lindern6609 3 жыл бұрын
Топовый контент делаете) Один из лучших на ютубе. Как для меня - самый лучший)) Очень благодарен за хорошие и максимально полезные видео. Пересмотрел, наверное, около половины из них и остался максимально доволен еще раз спасибо!!)
@alexeychernyavsky7775
@alexeychernyavsky7775 4 жыл бұрын
Только начал смотреть видос - сразу лайк поставил))) контент реально очень полезный. Спасибо, Владилен!!!
@antonanokhin5393
@antonanokhin5393 4 жыл бұрын
Владилен , этот курс, прям то, что нужно сейчас мне в работе над проектом))) Спасибо, что читаешь мысли)😄😉👍
@maxovsanyuk1033
@maxovsanyuk1033 4 жыл бұрын
Дякую за один з найкращих уроків що я бачив по React/Redux 🤘
@xbelmondox
@xbelmondox 2 жыл бұрын
Низкий поклон за труды! Очень доступное объяснение!
@wisehannel9190
@wisehannel9190 4 жыл бұрын
Спасибо тебе огромное за такую качественную работу) Особенно во-время такого не простого периода для многих людей =) Удачи тебе
@VladilenMinin
@VladilenMinin 4 жыл бұрын
Много людей сейчас будет на удаленке и надеюсь мой обучающий контент будет полезен в качестве образования)
@user-gz7tw3on8p
@user-gz7tw3on8p 4 жыл бұрын
Спасибо огромное! Столько полезного и так часто! Удачи!
@user-ok2rg8de3d
@user-ok2rg8de3d 11 ай бұрын
Привет, Владилен, очень хочется поблагодарить тебя и рассказать свою историю. Я училась в универе на программного инженера, но у нас был упор больше на бэк, а я всегда больше интересовалась фронтом, именно благодаря твоим видео смогла достойно разобраться с практикой и найти работу. Просто кладезь информации достойно и понятно оформленная, чётко поставленная речь, талант к донесению информации, ничего лишнего. Но и уже работая я часто обращаюсь к твоим видео. Для тех кто учится тоже, хочу порекомендовать обязательно сесть и полностью повторить видео, а уже после понемногу добавлять своё. Еще мне лично очень помогает посмотреть сначала видео на икс два, чтобы понимать в целом объем информации и базово ознакомиться, а только потом уже приступать к детальному изучению. Спасибо тебе за твой труд, возможно, ты даже не представляешь как сильно ты помогаешь. Все мои знакомые фронты, а у меня их очень много, знают тебя и рекомендуют. Даже синьоры иногда поглядывают видосики.
@user-yr3iv8lk6i
@user-yr3iv8lk6i 4 ай бұрын
Как у вас успехи, если не секрет?)
@user-ok2rg8de3d
@user-ok2rg8de3d 4 ай бұрын
@@user-yr3iv8lk6i здравствуйте, продолжаю работать и развиваться в этой сфере, всё хорошо
@GorillaB
@GorillaB 3 жыл бұрын
Спасибо огромное!) Наверное одни из самых лучших уроков у тебя) все кратко и по делу) благодаря таким как ты it стран СНГ становится на чуточку но ЛУЧШЕ!) успехов тебе!)
@user-we2fx9cp3d
@user-we2fx9cp3d 4 жыл бұрын
Владилен, спасибо тебе большое за такой полезный контент, особенно мне нравятся моменты когда ты говоришь "а теперь поставьте на паузу и попробуйте сами" ты очень удачно подбираешь момент когда это нужно), я с начало делаю свою реализацию а потом смотрю как сделал ты и подправляю мелкие детали. Очень круто! К слову я еще не в IT, сейчас учу react. Успехов тебе!
@valentinkorzun3838
@valentinkorzun3838 3 жыл бұрын
Этот урок прям супер крутой, спасибо! Особенно когда тебе нужно понять реакт+редакс в кратчайшие сроки
@valentinkorzun3838
@valentinkorzun3838 3 жыл бұрын
+, когда после вью тебе он начинает больше нравиться
@siarheilabetsik5658
@siarheilabetsik5658 2 жыл бұрын
Спасибо за урок. Было очень полезно. Нравится подача материала. И то, что даешь время самому попробовать что-то написать! Синтаксис Saga на генераторах - к этому нужно привыкнуть.
@user-ep1ny3qq9g
@user-ep1ny3qq9g 3 жыл бұрын
Влад, спасибо большое, классное видео по react redux и сагам
@Nazar5545
@Nazar5545 4 жыл бұрын
Ура!! Как раз то, за что я голосовал)))) Спасибо!
@BestKinoMoments_bkm
@BestKinoMoments_bkm 4 жыл бұрын
Спасибо,что ты есть.Крутой Чел.Продолжай в том же духе!
@user-zg6zp4jf4f
@user-zg6zp4jf4f 4 жыл бұрын
Как всегда, низкий поклон!
@oksanamishota6514
@oksanamishota6514 2 жыл бұрын
Спасибо большое, быстро и просто про React, отлично восстановила все полученные ранее, но не используемые какое-то время, знания.
@webxcryptoit7308
@webxcryptoit7308 2 жыл бұрын
Владилен, спасибо большое за то, что ты делаешь. Топовый контент!
@Basmete
@Basmete 4 жыл бұрын
Вау, только недавно искал что-то годное по саге и вот оно здесь. Офигенно!
@spbtrotter
@spbtrotter 3 жыл бұрын
Супер! Материал хороший и рассказываешь очень понятно!
@maxnextiva8671
@maxnextiva8671 3 жыл бұрын
Шикарный курс, ясно, понятно, доходчиво!
@dimitridoroshko
@dimitridoroshko 2 жыл бұрын
Владилен это Человек с большой буквы! Спасибо за труд и туториал!)
@MrAntonforce
@MrAntonforce 4 жыл бұрын
Это наверное первый блогер который "чувствует" меня)) Всегда то, что надо сейчас вспомнить/подучить/выучить! Всего вам самого доброго и светлого! Огромное спасибо за вашу нереальную продуктивность и стабильность выхода контента!
@VladilenMinin
@VladilenMinin 4 жыл бұрын
Рад слышать) я примерно основываюсь на своих ощущениях: что бы мне нужно было, когда я становился разработчиком)
@artemshazhko2545
@artemshazhko2545 4 жыл бұрын
Это лучший практический курс из всех что я видел на эту тему!
@MaxPronko
@MaxPronko 3 жыл бұрын
Очень поноавился формат, спасибо!
@Jett-love
@Jett-love 4 жыл бұрын
Спасибо за ролик! Будет круто ещё послушать про GraphQL
@user-gx7kf9um9x
@user-gx7kf9um9x 4 жыл бұрын
Как всегда топчик! Спасибо.
@DenisMikhalev
@DenisMikhalev 3 жыл бұрын
Однозначно Лайк, Владилен)
@ivan_sukhachev
@ivan_sukhachev 4 жыл бұрын
Лайк за валидацию php :D Спасибо за видео, ты просто космос, Владлен!
@aleksdobriy6941
@aleksdobriy6941 4 жыл бұрын
Спасибище! Сразу лойс)
@aleksandrgradov7859
@aleksandrgradov7859 4 жыл бұрын
спасибо!!! как всегда Вы -лучший!
@qwerty123246
@qwerty123246 2 жыл бұрын
Спасибо тебе большое, Владилен!!!
@AlexDia
@AlexDia 4 жыл бұрын
Щастья вам здоровья удачи благополучия денег любви процветания достатка семье собаке кошке
@VladilenMinin
@VladilenMinin 4 жыл бұрын
Благодарность)
@ArtikMan1994
@ArtikMan1994 4 жыл бұрын
То чувство когда на днях выучил Redux-Saga, но видео вышло только что. Но ничего, закреплю знания=) Огромное спасибо тебе за твои видео, это один из лучших(если не лучший) IT канал среди русскоязычных
@user-ri5tf7qu7w
@user-ri5tf7qu7w 2 жыл бұрын
Спасибо тебе большое за твои труды!
@BatShvit
@BatShvit 4 жыл бұрын
Спасибо за видео, очень хорошо структурирует знания! Хочу уточнить, правильно я понимаю, что redux-saga и redux-thunk про одно и тоже и нужно выбрать одно из двух?
@AndriiTokar1990
@AndriiTokar1990 3 жыл бұрын
Здравствуйте, Владилен! Супер урок, все доходчиво, структурировано, с меня лайк и подписка. Стало интересно насчет асинхронных вызовов - здесь используется 2 подхода, написать запрос прямо в action, и использовать сагу. Мне это кажется несколько избыточным. Я попробовал реализовать у себя следующим образом: завел отдельный класс, который назвал сервисом (ангуляровская практика сказывается, да), в который я выношу асинхронные запросы (создавая для каждого метод класса и возвращая готовые данные), экспортирую инстанс этого класса, ну и собственно в каждом методе я могу вызывать соответствующие экшны, в пайлоад передавая данные, полученные в запросе. Таким образом у меня логика хранится в отдельных, так и назовем, сервисах, и в итоге экшны получаются без дополнительной логики, и саги не используются. Скажите, мой подход применим? Или все же на дистанции те же саги выигрывают?
@eliyakushev5820
@eliyakushev5820 4 жыл бұрын
Отличный контент, доходчиво рассказал, спасибо!) Был бы рад послушать про next.js и ssr в целом ;)
@sexypypok
@sexypypok 2 жыл бұрын
Братан хорош! Давай вперёд! Контент в кайф! Можно ещё? Вообще красавчик!
@snowflaxxx
@snowflaxxx 2 жыл бұрын
Отличное объяснение, спасибо огромное!
@haykabrahamyan7881
@haykabrahamyan7881 4 жыл бұрын
Контекст был очень полезным, большое спасибо :)
@alexandrryzhenkov6917
@alexandrryzhenkov6917 3 жыл бұрын
супер, спасибо большое Владилен. Создай отдельное видео с рекламой только, я запущу там watcher loop 3000 )
@rolloleon4125
@rolloleon4125 3 жыл бұрын
все четко по полочкам, хороший контент)
@evgeny9242
@evgeny9242 4 жыл бұрын
боже) как ты все успеваешь) только одно видео по redux вышло и уже новое что то🍾 я учить не успеваю 😅😅😅🤟
@VladilenMinin
@VladilenMinin 4 жыл бұрын
Очень хочу, чтобы это было полезно и при этом сжато)
@jesusyt5897
@jesusyt5897 4 жыл бұрын
@@VladilenMinin вы лучший
@VladilenMinin
@VladilenMinin 4 жыл бұрын
🙏🤗
@user-xi9ig6it4v
@user-xi9ig6it4v 4 жыл бұрын
@@VladilenMinin Благодарю!
@romanmed9035
@romanmed9035 3 жыл бұрын
@@VladilenMinin ну так себя перепрыгнуть то тяжело. куда еще полезнее? (риторический вопрос)
@nikitagorchakov9591
@nikitagorchakov9591 4 жыл бұрын
огонь видео как всегда!!!
@denya_manunited
@denya_manunited 3 жыл бұрын
Спасибо за видео! Redux-Saga-Zatmenie))))))))))
@frozeninside5004
@frozeninside5004 3 жыл бұрын
Шутка про php зашла ) Спасибо !
@brodovoi
@brodovoi 3 жыл бұрын
Казалось бы пора просыпаться, 6:50 утра, а я еще не ложился.)Становлюсь все круче благодаря твоим урокам!)Спасибо!)
@shamistanaliyev5678
@shamistanaliyev5678 2 жыл бұрын
прошел год, каковы успехи?)
@esenarykbaev5239
@esenarykbaev5239 4 жыл бұрын
моощнооо! спасибо )
@alexkirillov4020
@alexkirillov4020 3 жыл бұрын
Крутое видео, спасибо !)
@valeriybabenko2195
@valeriybabenko2195 2 жыл бұрын
Спасибо! Отличное видео
@saskirakosyan3788
@saskirakosyan3788 4 жыл бұрын
Полезная тема. Спасибо
@HOTBOY9961
@HOTBOY9961 4 жыл бұрын
просто не щадишь)))) огромное спасибо, уже сто раз благодарил, но за дело! кстати круто было бы про сервер сайд рендеринг узнать, в целом что это такое, для чего нужно, как работает, как использовать и т.п.
@feruzafamily1445
@feruzafamily1445 4 жыл бұрын
Посмотри курс по nuxt у него на канале, там как раз идет речь про сервер сайд рендеринг
@SergeyAntonov22
@SergeyAntonov22 3 жыл бұрын
Спасибо за урок!
@yourbadapple
@yourbadapple 2 жыл бұрын
Спасибо большон за видео, очень полезно!
@alexs7931
@alexs7931 4 жыл бұрын
Спасибо за урок, все круто. Смотрю для поддержания знаний, что бы не забыть как с этим работать. И щупал ли ты google protobuff и grpc связку?
@atlasua2021
@atlasua2021 2 жыл бұрын
Это видео, подарило тебе подписку) Спасибо!
@THEGhost902
@THEGhost902 4 жыл бұрын
Здравствуйте, можете пояснить момент на 24:37, зачем использовать функцию, если setState (в отличие от хука useState) сам объединяет старый стэйт с новым?
@taniakedrova
@taniakedrova 2 жыл бұрын
Спасибо за видео!
@jses8560
@jses8560 4 жыл бұрын
Очень, очень круто! Спасибо вам!
@VladilenMinin
@VladilenMinin 4 жыл бұрын
Продуктивного обучения)
@SedaHayrapetyan
@SedaHayrapetyan 4 жыл бұрын
Спасибо огромное 🥰🥰🥰🥰
@VladilenMinin
@VladilenMinin 4 жыл бұрын
Приятного просмотра)
@Infinity-zf8ms
@Infinity-zf8ms 2 жыл бұрын
Спасибо за полезное видео 👍
@juliepanko
@juliepanko 3 жыл бұрын
Просто большое спасибо!
@sea-lucky7143
@sea-lucky7143 4 жыл бұрын
Заходит на ура. Но сегодня не осилил, завтра надеюсь закончить делать. Респект и лайк! В таком формате, было бы круто разобрать данный стек на Typescript, последнее время, активно пользуется спросом. P.s. *Порадовал от души!*
@justfly1984
@justfly1984 4 жыл бұрын
вместо `event.persist()` можно использовать обычный destructuring на event: ({ target: { name, value } })
@user-wj2qg3wm5v
@user-wj2qg3wm5v 4 жыл бұрын
cпасибо! видос топчик!
@Frost_273
@Frost_273 4 жыл бұрын
Жирный лайк! Супер видео! Практически полностью сделал тестовое задание на вакансию реакт разработчика, не хватило только роутеров. Спасибо за шикарные видосы!
@VladilenMinin
@VladilenMinin 4 жыл бұрын
Роутеры есть в другой практике на канале
@Frost_273
@Frost_273 4 жыл бұрын
@@VladilenMinin оо, не видел, я относительно недавно на твоем канале. Обязательно посмотрю о роутере! Спасибо.
@firewatermoonsun
@firewatermoonsun 2 жыл бұрын
Привет Владилен. Что посоветуешь использовать для продакшена - React Redux или React Redux Toolkit?
@dimok3687
@dimok3687 4 жыл бұрын
Спасибо, за классный материал. Возник такой вопрос в actions, когда мы описываем showAlert и когда вызываем setTimeout, нужно ли удалять его после выполнения? const timer = setTimeout(() => { dispatch(hideAlert()) clearTimeout(timer) }, 3000)
@tender6795
@tender6795 4 жыл бұрын
Спасибо. Теперь будет чем на карантине заниматься
@VladilenMinin
@VladilenMinin 4 жыл бұрын
На канале ещё много чем можно скрасить карантин)
@jenkasia6937
@jenkasia6937 3 жыл бұрын
Подскажите, есть ли какоето расширение для автоимортов в VS-code? И расширени для замны html атрибутов на jsx (class на className и тд)?
@pt-dev
@pt-dev 3 жыл бұрын
не часто пишу комменты, но за Redux Dev Tools ОГРОМНОЕ СПАСИБО. очень помогает в отслеживании state
@mehrdadmg939
@mehrdadmg939 3 жыл бұрын
Отлично и спасибо))
@kub1k
@kub1k 4 жыл бұрын
Все круто, спасибо
@MarioDev
@MarioDev 4 жыл бұрын
Огонь 🔥)
@user-go3fi8lp3k
@user-go3fi8lp3k 3 жыл бұрын
Владилен, подскажи пожалуйста, где какой чекбокс нужно включить в webstorm, чтобы при вызове функции перед её аргументами отображались их названия, например как "text" в твоей функции showAlert("text": "Что-то пошло не так" ).
@VladilenMinin
@VladilenMinin 3 жыл бұрын
Он у меня автоматически включён. Попробуй обновить программу
@Andrew-sv2oy
@Andrew-sv2oy 4 жыл бұрын
Спасибо за видео! Еще было бы полезно по unit и integration тестированию с использованием jest и enzyme. Только что-нибудь посложнее Hello world)
@depstor991
@depstor991 4 жыл бұрын
Всем привет, подскажите разве когда используешь redux можно отдельно работать со state как в PostForm??
@eugenegavrilov2618
@eugenegavrilov2618 4 жыл бұрын
По Redux Saga будет ещё что-то? Может более детальный курс на Udemy?
@romanluts511
@romanluts511 3 жыл бұрын
плюсую за сагу!
@AlinaSiomukha
@AlinaSiomukha 3 жыл бұрын
@@romanluts511 +1
@volodymyrmatselyukh8808
@volodymyrmatselyukh8808 3 жыл бұрын
Не понял зачем сага нужна. Можна же винести етот код из екшинкриетора в другой файл и тот же ефект будет. Нет разве?
@Serik686
@Serik686 3 жыл бұрын
супер просто и понятно. Спасибо
@SuperDepict
@SuperDepict 4 жыл бұрын
Круто!
@Maratreason
@Maratreason 4 жыл бұрын
Ааа! наконец-то)
@hasannamazl7584
@hasannamazl7584 4 жыл бұрын
Спасибоооо огромное 👍
@ivanmoskvin8626
@ivanmoskvin8626 3 жыл бұрын
Круто рассказываете, спасибо! Интересно, как эволюционировал стек. Теперь всё можно на хуках и со свеженьким синтаксисом. Помню времена, когда и спреда не было, в редюсерах надо было через Object.assign() работать. Добавлю, что чистые функции детерминированны. При одних и тех же входных параметрах всегда вернут одинаковый результат.
@azamjon40
@azamjon40 3 жыл бұрын
Ты красавчик спасибо за урок ))))
@o_petrushchak
@o_petrushchak 3 жыл бұрын
Дякую. Все файно!
@grommaks
@grommaks 4 жыл бұрын
Уместная тема для карантина :) Вопросик Для Magento 2 (это интернет магазины) был взят React + Redux + GraphQL, архитекторами системы (Magento 2 PWA) Есть мысли почему не Vuejs или почему на Angular? Основные плюсы такого стека для интернет магазина?