Нужен четвертый урок про redux-saga) Я думаю меня большинство поддержит (лайками и не только)
@davronsherbaev91335 жыл бұрын
согласен
@ecroFeGushKa4 жыл бұрын
kzbin.info/www/bejne/enico4uMZtB8ZtE
@cybersystem51374 жыл бұрын
Полтора года назад я бы тоже поддержал. Да только вот спустя это время я как-то перестал понимать накой черт эта сага вообще, как и сам редакс! Глобальный стор это круто, конечно, да только в большинстве случаев он не нужен.
@ArturZalewski3 жыл бұрын
@@cybersystem5137 Понятно, но что делать, если проект окажется не самым свежим. Любому джуну, хотелось бы понимать и иметь возможность минимально поддерживать код. Классы, Редакс, возможно, на новых проектах не имеет смысла поддерживать, но есть куча старых, которые никто ради меня, такого ленивого переписывать не станет )))
@cybersystem51373 жыл бұрын
@@ArturZalewski удивлю, но так всегда и везде происходит. А еще происходит так, что если ты понемногу отрефакторишь код и перепишешь его на более современные вещи (аккуратно, конечно), премию не дадут, но и возражать не будут. А работать тебе будет проще.
@yevheniirachkovan81015 жыл бұрын
Спасибо за хороший и понятный урок) не зря год ждал
@alekseytsibulnikov34475 жыл бұрын
Прекрасный скринкаст. Спасибо! Все ясно и понятно. P.s. Было бы хорошо если бы ты выложил конечный код на гит.
@necelentano5 жыл бұрын
Спасибо за отличный контент по Редаксу. Жаль, что выходит раз в году)
@serhii.chernenko4 жыл бұрын
первое из многих видео, благодаря которому наконец-то понял о связке и правильной структуре и что для чего. спасибо
@rib03855 жыл бұрын
спасибо, благодаря уроку начал понимать оф документацию, лучшие уроки, которые видел
@andreyq91795 жыл бұрын
АВТОР у тебя талант! Записывай пожалуйста уроки чаще. Людям нравится!
@user-rk9ky9qf9j5 жыл бұрын
Сегодня с часу дня сидел за технической документацией Redux, что-то писал, вроде как получалось, но в итоге получилась какая-то ..., посмотрел Ваш урок и все заработало! Спасибо большое! Желаю успехов и не оставляйте это дело, Вы делаете огромное добро другим людям
@ArturZalewski3 жыл бұрын
Концентрированно, полезно и ёмко. Несколько раз пересмотреть, один раз повторить и можно сказать, что в принципе, эта концепция усвоена. Спасибо за Ваш труд!
@Stan93265 жыл бұрын
У тебя талант! Продолжай)
@nazarposhta5 жыл бұрын
Отлично! Все понял и начал использовать redux в нашем проекте. Спасибо.
@Polite_person_4 жыл бұрын
Блин. Я 4 туториала по редаксу посмотрел и окончательно разобрался только после просмотра данного видео. Спасибо! Лайк и подписка.
@homovespertilio4 жыл бұрын
Офигенный туториал! Я штук 30 перебрал и ютубовских и текстовых, только в этом смог четко понять что происходит!
@Kreator321RG5 жыл бұрын
отличный урок! спасибо
@blackoutworks5 жыл бұрын
Спасибо. Планируешь продолжать? Интересно про асинхронность с редаксом (thunk/saga) и совмещение редакса с роутером.
@saskirakosyan52684 жыл бұрын
the best video about redux, good explanation))
@chillchill52542 жыл бұрын
Спасибо большое, все очень доходчиво!
@igrman4 жыл бұрын
Спасибо большое. Классный ролик!
@user-tq3ip9iu9x5 жыл бұрын
Легко и понятно объяснил!
@dobrinyanicitich75145 жыл бұрын
Очень доходчиво, спасибо =)
@yuriyfedechko4 жыл бұрын
Спасибо!! самым понятным языком показал!)
@artemviliutich88015 жыл бұрын
очень круто!!! продолжайте
@yaolegoleynik5 жыл бұрын
Спасибо было бы круто посмотреть видеоурок по созданию интернет магазина или другого сайта на react/redux
@alagunoff4 жыл бұрын
Огромное спасибо!
@Nikitosss914 жыл бұрын
Норм традиция, раз в год видос по редаксу)) Ждем продолжение в 2к20
@ecroFeGushKa4 жыл бұрын
Следующий видос будет не про редакс))
@Nikitosss914 жыл бұрын
@@ecroFeGushKa расскажи по каким ресурсам учил реакт-редакс, а то от обилия видосов, курсов и статей аж тошнит, не получается на чем то сконцентрироваться... Спасибо!-)
@ecroFeGushKa4 жыл бұрын
@@Nikitosss91 redux.js.org/ react-redux.js.org/
@Nikitosss914 жыл бұрын
@@ecroFeGushKa спасибо тебе, добрый человек. удачи по жизни)
@Mr-Xxx2285 жыл бұрын
Лучший!)
@user-ej2oe4fu1b5 жыл бұрын
Спасибо! В первой части звук был лучше.
@Stan93265 жыл бұрын
Супер!
@StreeTraceuresvideos5 жыл бұрын
Very Helpful video :)
@RomanKaras775 жыл бұрын
Отличное видео! Но есть один нюанс, Вы в корне папки store создали файл actions.js. Он походу лишний в данном примере.
@OrangeBox334 жыл бұрын
Спасибо!
@StudioWebDev4 жыл бұрын
Отличный пример! Лайк и подписка) только можно было не биндить в конструкторе ф-ции, а использовать arrow function и еще не понятно из видео, что ты написал в общий actions (store/actions) ?
@enjoymtx3 жыл бұрын
Очень качественный контент. Получше того, что у меня были в платных курсах на эту тему. Подскажи пожалуйста, как в VSC сделать такое же отображение папок и файлов, без стандартных стрелочек?
@cybersystem51374 жыл бұрын
Первый раз вижу такое описание функций! Но в любом случае, имхо, короче, проще и понятнее просто использовать стрелочные функции, чем городить непонятный огород с конструктором!
@userJakov5 жыл бұрын
Я думал недождемся)))
@dcstrong88764 жыл бұрын
Го уроки вообщем про реакт как на нем правильно строить преложения. Возможно что-то с Mongoose, MongoDB, React, Redux, Express. Какий нибудь урок на час. Как сделать авторизацию пользователей с сессией и все такое. Мало таких уроков , в основном по всему инету приходится по кусочкам собирать, что бы понять как и что делать
@zoojs5 жыл бұрын
Исходники, пожалуйста!!!
@axblue29475 жыл бұрын
Учу реакт, открыл документацию, посмотрел пару роликов, написал туду лист и думаю - бля, круто, удобно и не особо сложно. Затем почитал что редакс это мастхэф для реакт, теперь смотрю этот ролик и чет ни черта не въезжаю. Принцип понимаю вроде как, но столько копипаста надо делать и т.д., какт жоска дается пока... Буду ломать голову дальше. Автор вроде все четко говорит, но дается сложно. Спасибо.
@WolfzPain5 жыл бұрын
в целом этот редакс какой-то перегруженый копипастой, которую можно было под капот скрыть
@viktor86704 жыл бұрын
@@WolfzPain я думал, что только у меня такое ощущение после опыта работы c vue + vuex, где все гораздо проще, все аккуратно скрыто под капотом
@lomeat5 жыл бұрын
Добавляй все видео в плейлист, тогда ютуб следующим видео будет включать не рекомендованное, а следующее из плейлиста. И не придется оставлять ссылки на видео.
@ivanPolozov1483 жыл бұрын
Подписался на канал, жду новых видосов
@elnasurov67425 жыл бұрын
Подскажите, пожалуйста, как называется этот плагин реакте.. Никак не могу найти..
@dimitirpopovich43944 жыл бұрын
Спасибо за отличное объяснение, но остался вопрос. Какая роль корневого файла actions.js?
@Polite_person_4 жыл бұрын
Я в другом туториале видел что экшн-криэйторы и экшены разносят по разным файлам, наверное как раз в корневой экшн заносят только константы, но на видео он видимо забыл это сделать, я думаю что он появится рано или поздно в комментах и прояснит ситуацию = )
@SergeyBaranov_ru4 жыл бұрын
Спасибо большое за понятный и логично структурированный урок! Есть вопрос про использование CombineReductors при дальнейшем разбиении на компоненты - как быть при увеличении уровня вложенности. Объясню на примере: если например в RegistrationComponent добавляем вложенный компонент, редуктор для него нужно добавлять в combineReductors компонента Registration или существующий combineReductors на самом верхнем уровне? Спасибо!
@ecroFeGushKa4 жыл бұрын
Можно "стакать" combineReducers и класть их друг в друга, с этим нет проблем
@callpack963 жыл бұрын
АУФ
@filcondrat5 жыл бұрын
ждем сагу
@eugenegavrilov26185 жыл бұрын
Разве удобно масштабировать приложение, когда части одного модуля лежат в кучи разных папок? Так же не удобно переносит что-либо в другой проект, когда приходится пройтись по десятку папкок чтобы собрать модуль воедино. Тоже самое касается и удаления.
@lomeat5 жыл бұрын
пока не смотрел, че он там делает. Но я так понимаю, что делит components и containers? Если нет, то как совместить reducers и actions? Например тот же todolist, где будут экшоны (addTodo, updateTodo, removeTodo), но использоваться будут в разных 2 компонентах? Тут уже не разделить, или просто рендерить todo внутри todolist, но это некрасиво и в итоге файл будет срок на 1000
@andreykostyuchenko32394 жыл бұрын
Видео супер, но почему при использовании реакта и редакса столько бойлерплейта(
@StreeTraceuresvideos5 жыл бұрын
Bro sdelai video kak pisat polnacenoye sap sredux :)
@amatol21003 жыл бұрын
Вот я недавно начал изучать react. Поэтому за вопрос не обессудьте. ) Зачем нужен redux? В смысле, зачем нужен глобальный state? Разве мы не можем просто создать глобальную переменную и туда что-то записать? Я чего-то ещё не понимаю?
@oOIMAXIOo4 жыл бұрын
Конечно это все круто, а что делать если у нас вот такая ситация store => reducer и его надо разбить на еще новые редюсеры, и как получается сделать дочерний combineReducers?
@ecroFeGushKa4 жыл бұрын
Chihayafuru ну, внутри редюсера у тебя будет свич-кейс, для разных action type. можно под каждый action type свой редюсера написать и тупо передать в него текущий стейт и payload. это самый простой вариант. вариант посложнее: в объекте, который передается в combineReducers, в одно из желаемых полей положить не редюсер, а ещё раз вызвать combineReducers
@Kra6on5 жыл бұрын
Подскажи плз, как правильно записать в стор значения, которые мы получаем от запроса к API?
@ecroFeGushKa5 жыл бұрын
Создать экшен, который кладет нужные данные в стор; запрос к API запустить внутри redux-thunk или redux-saga (они были созданы для того, чтобы держать в себе стороннюю логику) и там же дернуть этот созданный экшен
@Kra6on5 жыл бұрын
@@ecroFeGushKa окей, спасибо, пошел тогда искать что такое saga и thunk:)
@Kra6on5 жыл бұрын
@@ecroFeGushKa есть еще один вопрос!) Если у меня есть, допустим, 2 редьюсера(как тут , на видео), то когда я в один из них буду посылать экшен - то во втором редьюсере же тоже могу посмотреть, что пришло? просто мы с помощью switch-case используем только то, что нам нужно для конкретного редьюсера?
@Nikitosss914 жыл бұрын
.а что за тема вс кода?
@Kra6on5 жыл бұрын
А где лучше записывать PropTypes? в Контейнерах описывать для всех или уже внутри, в компонентах?
@ecroFeGushKa5 жыл бұрын
Лучше использовать TypeScript :) Ну, а PropTypes - в компонентах, т.к. все-таки пропсы характеризуют, в первую очередь, функциональность компонента, а контейнер - это просто обертка.
@Kra6on5 жыл бұрын
@@ecroFeGushKa спасибо!)ждем новых видео!
@elnasurov67425 жыл бұрын
@@ecroFeGushKa подскажи, что за плагин у тебя для реакта стоит, плез
@aleksandrzhilkin4800 Жыл бұрын
Не понял, почему бы вместо AuthContainer не использовать сразу Auth: export default connect(mapStateToProps, mapDispatchToProps)(Auth); вместо export default connect(mapStateToProps, mapDispatchToProps)(AuthContainer);
@snd55435 жыл бұрын
Круто) только вот вопрос, если у нас будет гигантский стор, не лучше ли хранить onChange в стэйте компонента, а в стор отправлять только по сабмиту? На сколько это критично в плане быстродействия?
@ecroFeGushKa5 жыл бұрын
Само собой, в 90% случаев нет смысла класть данные из onchange сразу в стор. Про производительность - сложно сказать, она слабо зависит от размеров стора
@ivanpoberezhniuk96945 жыл бұрын
Метод debounce из lodash.js Вам поможет
@ROX24 жыл бұрын
не показано как из одного компонента через редакс вытащить стейт другого
@mrGenius9965 жыл бұрын
Держи царский лайк и подписку!
@user-my2yg4tb8o5 жыл бұрын
Воу что со звуком? До этого лучше было
@VSsoviet4 жыл бұрын
какая же клавиатура у тебя ахуенная, у меня механника не так приятно звучит даже))
@ecroFeGushKa4 жыл бұрын
NodeJS Developer Ненавистная всеми Макбуковская "бабочка"))
@VSsoviet4 жыл бұрын
@@ecroFeGushKa хз хз мне прям в кайф с каждого отклика и да, спасибо за уроки)
@sergeyzaycev37333 жыл бұрын
Вот это как раз для больших приложений не подходит. Если у вас действительно большое приложение, вы будете тупо весь день копипастить одинаковые файлы...
@Kolabrod4 жыл бұрын
Исходники ? не не слышал
@andriiukraine66975 жыл бұрын
Хм... А в реальной жизни вообще имеет смысл сторить поле при каждом изменении в глобал стейт. Вот тебе жизненный кейс. Форма с 256 полями. Разбить ее на меньшие не выходит из-за требований бизнеса. Представь себе кол-во экшенов которые нужно прописать.
@ecroFeGushKa5 жыл бұрын
Ну, достаточно сделать какой-то один дженерик экшен и в качестве payload передавать айдишник\ключ\название поле и класть его значение в стор по этому полученному ключу
@HPMuwa4 жыл бұрын
Мне не понравилось, что в видео у меня полосы слева и справа и сверху и снизу. Мой экран 16:10
@anatoliitytarenko49264 жыл бұрын
Гду бл**ь ссылки на код?!! А так урок хороший , но за ссылки дис
@unlike7775 жыл бұрын
Ребята учите Vue, серьезно, не нужно вам все это....
@ecroFeGushKa5 жыл бұрын
Мы тут в первую очередь про Редакс говорим, причем тут Вуе) Вуе не панацея и в нем также не решена проблема управления данными (как, собственно, и везде)
@solovladik5 жыл бұрын
@@ecroFeGushKa о какой проблеме речь? можно источник, чтобы разобраться в этом вопросе по-лучше?
@ecroFeGushKa5 жыл бұрын
@@solovladik blog.logrocket.com/why-use-redux-reasons-with-clear-examples-d21bffd5835, раздел "Why you need a state management tool". redux.js.org/introduction/motivation