#17: 🍕 React Pizza v2 - Асинхронные экшены в RTK (createAsyncThunk), отлавливаем ошибки

  Рет қаралды 34,934

Archakov Blog

Archakov Blog

Күн бұрын

Пікірлер: 252
@lollipop6384
@lollipop6384 2 жыл бұрын
Так приятно наконец-то понять то сложное, что давно пытаешься. Большое спасибо!
@redalert7658
@redalert7658 Жыл бұрын
Для тех кому лень открить документацыю в 2023 году extraReducers: (builder) => { builder .addCase(fetchPizzas.pending, (state) => { state.status = "loading" state.items = [] }) .addCase(fetchPizzas.fulfilled, (state, action) => { state.items = action.payload state.status = "success" }) .addCase(fetchPizzas.rejected, (state) => { state.status = "error" state.items = [] }) }
@alexforos5425
@alexforos5425 Жыл бұрын
Спасибо большое! Я уже себе голову сломал, искал ошибку у себя! 👍
@МаксимСоловьев-с9н
@МаксимСоловьев-с9н Жыл бұрын
Спасибо👍
@sempregiovane1
@sempregiovane1 Жыл бұрын
дай знать где ты находишься, я хочу тебя
@vladislavkatz9774
@vladislavkatz9774 Жыл бұрын
спасибо тебе, добрый человек!
@redalert7658
@redalert7658 Жыл бұрын
@@sempregiovane1 пішов нахуй підар
@НатальяЗавертяева-к1х
@НатальяЗавертяева-к1х 2 жыл бұрын
Говорю спасибо и вкладываю в это слово все свое восхищение и безграничное уважение!
@pavelche9318
@pavelche9318 2 жыл бұрын
спасибо за курс! ты такой один на весь ютуб!
@elenafromny9567
@elenafromny9567 Жыл бұрын
Для тех, кто сразу же TS делает, нужно типизировать и useDispatch, а state уточнять as или дженерик : const dispatch = useDispatch() ... const state: RootState = getState() as RootState;
@YevhenHromov
@YevhenHromov Жыл бұрын
Промисы и ассинк-эвейты уже проходил в других курсах и уроках и вроде бы понимал примерно, что они делают и для чего нужны, но это такая тема, которую с первого, а то и со второго раза понять почти нереально)) Здесь на примерах стало ещё понятнее) Спасибо за очередной крутой урок!
@UnKnown-ur9fq
@UnKnown-ur9fq Жыл бұрын
да, асинхронность и Event Loop очень важно понимать - это 100% спросят на каждом собезе
@clojure_sith
@clojure_sith Жыл бұрын
Столкнулся с ошибкой при переносе в редакс ассинхронного запроса. До последнего не получалось сначала получить пиццы, потом отрисовать их. Перелопатил весь код, портатил часа 3, но ошибки все-таки нашел и исправил. Дико кайфанул. Потом стал писать код наперед и кайфанул еще больше. Спасибо за замечатлеьный курс!
@МаксимСоловьев-с9н
@МаксимСоловьев-с9н Жыл бұрын
чистый кайф
@baxtiyornarziev5847
@baxtiyornarziev5847 Жыл бұрын
У меня такая же проблема только я вот не смогу найти где ошибка. Можешь подсказать?
@nijy001
@nijy001 2 жыл бұрын
Спасибо, за отличное объяснения createAsyncThunk 👍
@Мария-ц8ъ2е
@Мария-ц8ъ2е 2 жыл бұрын
спасибо большое. наконец-то поняла для чего используют async, await. я счастлива🙂🙂🙂
@d_r_robot
@d_r_robot 2 жыл бұрын
Не успел досмотреть корзину, а тут снова годноту подвезли!)
@igorKlim97
@igorKlim97 Жыл бұрын
я прошел курс и много моментов понятно) иногда для развития тоже ищу какие-то курсы в ютубе пока не трудоустроюсь. Ты единственный кто настолько четко и понятно обьясняет, и большой молодец что придерживаешься рефакторингу благодаря чему код проще логичнее и понятнее. в этом одном приложении ты просто много чего показал чего не показывают в более больших курсах
@fugas6258
@fugas6258 Жыл бұрын
А почему ты все еще не трудоустроился если не секрет
@igorKlim97
@igorKlim97 Жыл бұрын
@@fugas6258 сейчас сложно очень да и спрос велик) нужно сильно пробиваться так как рынок айти сейчас сильно велик и большая конкуренция(
@korinnasinelnikova3277
@korinnasinelnikova3277 Жыл бұрын
@@igorKlim97 получилось трудоустроиться?
@n1pepp
@n1pepp 9 ай бұрын
59:01 у кого возникает ошибка попробуйте extraReducers: builder => { builder.addCase(fetchPizza.fulfilled, (state, action) => { console.log(state) }) },
@elmaga4486
@elmaga4486 9 ай бұрын
обнова ?
@vovaLYSA
@vovaLYSA 9 ай бұрын
да @@elmaga4486
@Sergey_D.
@Sergey_D. 2 жыл бұрын
На середине видео, поставил на паузу. Все сделал по памяти, запрос идет - пиццы не рендерятся! Потратил 1.5 часа на дебаг, перепроверил уже с видео, посмотрел уже итоговую версию с тс. Все так.... Решил посмотреть дальше... После добавления пицц через extra reducers все стало на места! Спасибо за урок! Лучший!
@dota-bluewater4039
@dota-bluewater4039 Жыл бұрын
как решил проблему? у меня просто был локал хост 3000
@dota-bluewater4039
@dota-bluewater4039 Жыл бұрын
?
@Sergey_D.
@Sergey_D. Жыл бұрын
@@dota-bluewater4039 досмотрел до конца?
@escobar929
@escobar929 2 ай бұрын
Мужик!!!!ты просто лучший!!!!!нужно больше роликов!!!!!!!!!!
@nisunka6336
@nisunka6336 2 жыл бұрын
Большое спасибо за подробное объяснение. А то, что не удалось получить "Питсы" позабавило :)
@REDH3ADd
@REDH3ADd Жыл бұрын
про "питсу" знать надо, это база)
@My_animation_w17
@My_animation_w17 Жыл бұрын
Очень спасибо! Прям от души) Интересно рассказываешь! По больше бы таких уроков на создания приложений, сервисов сайтов и т.д.
@AlexStr-h9t
@AlexStr-h9t Жыл бұрын
Автору спасибо, курс огонь. Есть недовольные ребята, но всем не угодишь. Если у вас есть проблемы, то это нормально и даже хорошо. Не гоните на автора, вы не должны в тупую все копировать, если не получается читайте доку там есть решения 90% проблем. Я представляю на работе: у меня не получается, все я леваю с курса(работы). На работе не будет видео.
@zakiro4277
@zakiro4277 2 жыл бұрын
SIDE EFFECTS - Побочный эффект Программирование Побо́чные эффе́кты - любые действия работающей программы, изменяющие среду выполнения. Например, к побочным эффектам относятся: доступ к объекту, определённому с модификатором volatile; изменение объекта; изменение файла; изменение поведения инструкций процессора, обрабатывающих числа с плавающей точкой; Википедия
@tigranovakyan2783
@tigranovakyan2783 2 жыл бұрын
что-то шоколадку захотелось)) Благодарю за твои бесценные труды!!
@admusmanov3009
@admusmanov3009 Жыл бұрын
Спасибо за мощнейший курс который я когда либо видел 👍👍👍
@YulVilaya
@YulVilaya Жыл бұрын
мне понадобилось 3 недели чтобы разобраться с редаксом, наконец все поулчилось и я иду на 18 урок ))) СОВЕТ: уроки не пропускайте ! делайте все вместе с учителем , если ошибки даже когда делали все так же, скорее всего с 1 просмотра вы все же пропустили какой - то маленький ньюанс поэтому не работает , отменяейте изменения и начинайте заново и с какого - то раза поулчится, конечно для этого используйте гит, делайте коммиты
@burunduckc
@burunduckc Жыл бұрын
Друх, аналогично)) Я на редакс потратил неделю и забросил ненадолго. Но щас вернул хватку, редакс вообще на отлет зубов вызубрил, но вот сам код немного подзабыл, но уже все на своих местах. И полностью согласен с вашими словами!)
@Татьяна-ю1р2м
@Татьяна-ю1р2м 2 жыл бұрын
Спасибо огромное за эту возможность узнать столько полезной информации!!!
@ГеннадийГорохов-ц8н
@ГеннадийГорохов-ц8н 11 ай бұрын
Спасибо про асинк эвейт. Хорошо обьяснили.
@keepcalmandcodeon.
@keepcalmandcodeon. Жыл бұрын
Ребят, внимательно следите за тем, чтобы "extraReducers: builder" НЕ был внутри основного reducers, потратил 2 часа на поиск ошибки))
@Калабарака
@Калабарака 4 ай бұрын
Спас! Реально! Рекспект брат по коду!
@redalert7658
@redalert7658 Жыл бұрын
Автору большое спасибо. Огромное я б сказал)
@bobozaka
@bobozaka 2 жыл бұрын
самый интересный и понятный курс
@АртемАниськин-н6г
@АртемАниськин-н6г 2 жыл бұрын
Хороший пример с await и оберткой!
@YulVilaya
@YulVilaya Жыл бұрын
43:30 для меня очень сложно(особенно что я. потеряла нить сюжета), но я все равно смотрю урок и пытаюсь понять 😊
@Host-Tach
@Host-Tach 6 ай бұрын
что за сюжет?)
@romanriezanov1704
@romanriezanov1704 2 жыл бұрын
Не знаю почему, но у меня была проблема в extraReducers. Продукты вообще не отображались. Если вдруг кто-то столкнется с такой же проблемой, то вот это решение мне помогло: extraReducers: (builder) => { builder.addCase(fetchProducts.fulfilled, (state, action) => { state.products = action.payload; }); Сделал просто как в документации)
@cryptopunk2508
@cryptopunk2508 2 жыл бұрын
спасибо, помогло!
@yuriyula
@yuriyula Жыл бұрын
Спасибо!
@Арсений-й5х3ы
@Арсений-й5х3ы Жыл бұрын
помогло,спасибо,дружище
@losthendry1814
@losthendry1814 Жыл бұрын
спасибо тебе, дорогой человек, 2 часа мучалась!
@dimitriy8689
@dimitriy8689 2 жыл бұрын
все понятно все супер, но вторая половина урока где ты уже работаешь с кодом становится не понятным из за того что быстро все делаешь и мне как новичку сложновато понять что происходит
@Boobnovslava
@Boobnovslava Жыл бұрын
слышал про asyncthunk, но только сейчас понял, что значит отделять бизнес логику от ui спасибо сенсей
@nicolaibondarenco3817
@nicolaibondarenco3817 2 жыл бұрын
Я что-то пропустил? у меня вместо функции fetchPizzas - useEffect. С ним такой фокус не выходит. Что не так?
@АрчибальтГугенов
@АрчибальтГугенов Жыл бұрын
шоколадка Николас - прекрасна
@artarzhakhouski5222
@artarzhakhouski5222 Жыл бұрын
Здравствуйте! Может кто-нибудь объяснить, в каком порядке нужно теперь смотреть уроки? Начиная с 15-го урока. исходный код следующего урока не совпадает с предыдущими. Описания изменений нет, посмотреть стартовый код негде. Как результат - в процессе урока всё ломается, как фиксить - непонятно, а продолжить учить невозможно. Автор прекрасно и доходчиво всё объясняет, но здесь явно что-то не так.
@taggz1030
@taggz1030 Жыл бұрын
С такой же проблемой столкнулся. Видел в комментариях что перед этим уроком нужно возвратиться к 15-му, кто-то пишет вовсе пропускать 15-ый... что то не понятно
@thegodofshame1550
@thegodofshame1550 Жыл бұрын
Не знаю, может поможет кому. Смотрел все уроки не пропуская, код работает нормально. Автор говорил, что перезалил 15 ролик, поэтому идет небольшой рассинхрон с последующими роликами, но они не должны влиять на последующий код, т.к. относятся к совсем другой части (там просто фильтрация). А вообще, советую не пропускать 15 урок.
@nanoberzerk
@nanoberzerk 11 ай бұрын
@@thegodofshame1550 так там он использует другой код, который еще не написан в 14 уроке!
@matvienko_p
@matvienko_p 11 ай бұрын
@@nanoberzerk там в описании автор дал ссылку на исходник. надо немного покопаться
@adilzhanbabakhan1369
@adilzhanbabakhan1369 2 жыл бұрын
В этом уроке все понятно :D
@СветланаАндреевна-х8р
@СветланаАндреевна-х8р Жыл бұрын
Спасибо большое за ваши уроки,ждем новые курсы по реакт !
@alikrekrytov6865
@alikrekrytov6865 2 жыл бұрын
КРУТО !!! СПАСИБО - за отличное объяснения !!!👍
@skyranor6854
@skyranor6854 2 жыл бұрын
Большое спасибо за курс!
@vansowboy
@vansowboy 2 жыл бұрын
Прошел первую пиццу, прохожу вторую, спасибо за твой труд!)
@Unnamed-r8x
@Unnamed-r8x 2 жыл бұрын
Отличные видео, отличный автор. Говорят для продвижения нужно минимум 4 слова.
@matveyd7272
@matveyd7272 Жыл бұрын
48:00 В редаксе лучше не использовать методы изменения, тк редакс, по сути - это склад (как мы помним из предыдущих объяснений). Если мы на складе хотим хранить доски - это пожалуйста. Для этого он и предназначен. Но, если мы на складе захотим распиливать доски, шлифовать, обрабатывать - то охранник склада на нас будет ругаться, тк склад предназначен не для этого.
@dever312
@dever312 Жыл бұрын
в этом что то есть...
@zakiro4277
@zakiro4277 2 жыл бұрын
27:24 шоколадка Николас ахах)
@YulVilaya
@YulVilaya Жыл бұрын
очень хороший пример с шоколадкой
@АртурАнтисептик
@АртурАнтисептик 2 жыл бұрын
Помогите, не знаю как исправить уже третий день. items.map is not a function(где мы создаем PizzaBlock), когда на 41 минуте мы диспатчим setItems.(при дебагге я понял, что до того как в items что-то появится, реакт пытается создать PizzaBlock и из-за этого ошибка) P.S. ошибка в деструктуризации) было: const items = useSelector((state) => state.pizza) (думал, если достаем только один объект, то можно без {}) стало: const { items } = useSelector((state) => state.pizza)
@yuriyula
@yuriyula Жыл бұрын
А у меня как раз наоборот было) так не работало: const { items } = useSelector((state) => state.pizza.items) так заработало: const items = useSelector((state) => state.pizza.items)
@alexandr8151
@alexandr8151 2 жыл бұрын
отличный курс!!!
@Ari0tee
@Ari0tee 8 ай бұрын
43:25 "Если ты дошел до этого урока и до сих пор его смотришь, значит для тебя это не сложно" Пи***ц как сложно, я после добавления редакса в проект, вообще суть потерял. Как бы понимаю, что мы делаем, но не понимаю. Сижу потому что интересно и хочется увидеть TS. Чисто на мотивации по 12 часов сижу, делаю
@whitesnow4985
@whitesnow4985 2 жыл бұрын
моё почтение за разъяснения)
@yphitz3340
@yphitz3340 9 ай бұрын
1:14:32 очень грустно🥲
@vladislavkatz9774
@vladislavkatz9774 Жыл бұрын
1:11:14 когда автор делает деструктуризацию и вытаскивает const { items, status } = useSelector(state => state.pizza) У меня оно наотрез отказалось работать, после не особенно длительных поисков заметил, что сама переменная status - скаляр (простой тип) данных 'string', и если на него сделать конст, то изменить значение простого типа уже будет нельзя, по этому я просто сделал другой селектор через ЛЕТ : let status = useSelector(state => state.pizza.status) . Надеюсь, кому-то поможет ))
@Евгений-х7п9с
@Евгений-х7п9с 2 жыл бұрын
Действительно UseEffect в Home изменил, думаю что при типизации можно будет поправить
@VladimirLagutin-op4yg
@VladimirLagutin-op4yg 2 жыл бұрын
Это невероятно круто)))😎
@maga_frank
@maga_frank Жыл бұрын
Фухх наконец то понял этот редакс тулкит, прям до центра мозга все дошло. Осталось некоторые моменты типа useNavigate изучить еще раз попрактиковать, а то я не очень понял что оно и зачем нужен (ну так бывает первый раз) так что вернусь к ней потом
@rostislavpotapov7215
@rostislavpotapov7215 2 жыл бұрын
Куда лучше выносить логику запросов на сервер? В кастомный хук useFetch который возвращает кортеж, или же делать async actions в редаксе ?
@pablo8896
@pablo8896 Жыл бұрын
делать кастомный хук
@АндрейБазаров-э7ц
@АндрейБазаров-э7ц Жыл бұрын
Напомните, пожалуйста, в каком уроке вместо useEffect была написана функция fetchPizzas?
@matveyd7272
@matveyd7272 Жыл бұрын
да я вот тоже смотрю видео по порядку и заметил отличия с моим кодом, который стараюсь писать параллельно. Видимо это осталось за кулисами и нужно самим поразбираться
@rflwnq
@rflwnq Жыл бұрын
@@matveyd7272 не разобрался?
@serhiishm
@serhiishm Жыл бұрын
в 15 уроке, нужно сначала пропустить 15, дойти к 17 и перед ним пройти 15 (он просто перезаписан и код отличается)
@Jest_Zloi_Voli
@Jest_Zloi_Voli 2 жыл бұрын
Большая благодарность!
@AlexGabber
@AlexGabber 2 жыл бұрын
Благодарю! Для меня образовался спорный момент, ранее я смотрел в других источниках про createAsyncThunk, и там объяснялось про то, что во время фетча все равно try catch нужен. Месяц практиковал и вроде как для себя определил, что try catch все же нужен. Теперь надо проводить расследование) Далее для себя не могу определить, лучше ли этот вариант нежели rtk query, я сделал фетч запрос через rtk query чисто для того чтобы отпрактиковать этот момент, действительно очень удобно. Но меня смущает, что rtk query имеет размер 27кб в gzip против аксиоса 6.7кб, но вроде как это не единственный нюанс против rtk query. Дальше потерял нить зачем в данном случае нужен редьюсер setItem, возможно пропустил что-то, так как смотрел в 2х
@imrondev
@imrondev 2 жыл бұрын
лол сейчас тоже проверил и тоже не могу найти где используется setItems)
@laytep3775
@laytep3775 2 жыл бұрын
​@@imrondev Мы заменили setItems из reducer на extraReducer
@imrondev
@imrondev 2 жыл бұрын
@@laytep3775 Благодарю
@diamondjee
@diamondjee 2 жыл бұрын
@@laytep3775 в таком случае можно ли оставить reducers пустым?
@vithvo5752
@vithvo5752 2 жыл бұрын
@@diamondjee да, ну я думаю ты итак уже попробовал
@ismailbenoevski
@ismailbenoevski 2 жыл бұрын
Где автор пишет юзЭффекты в Home? я пропустил этот момент или как?
@Никита-ф3о9и
@Никита-ф3о9и 2 жыл бұрын
ты лучший блогер по it !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
@СтройКонсалт
@СтройКонсалт Жыл бұрын
День десятый. Работа кипит. Нас все меньше, судя по лайкам))) Очередной раз - респект Дэну!
@АртемВысоцкий-т9ш
@АртемВысоцкий-т9ш Жыл бұрын
да!!!!!!!!!!! сделал
@vladimirivanov4756
@vladimirivanov4756 2 жыл бұрын
1:01:28 Действительно, вспоминаю с болью...
@mr.zxzxzxz3816
@mr.zxzxzxz3816 Жыл бұрын
ассаламуалейкум. рахмат брат!
@MsThe13th
@MsThe13th 2 жыл бұрын
Почему в этом ролике юзэффекты какие то другие стали в Home.jsx? Как будто я чтото пропустил....
@ВиталийЗиневич-х6ш
@ВиталийЗиневич-х6ш 2 жыл бұрын
все также , он просто в useEffect сейчас передает фун-цию fetchPizzus
@ИгорьКапасин
@ИгорьКапасин 2 жыл бұрын
да да у меня qs.parse написан, в ролике уже нет...пиздец учитель..
@Papandos-cw8we
@Papandos-cw8we Жыл бұрын
там код меняется у автора от урока к уроку. Не обучение . а вылавливание картинки на видео...что там автор нового написал между уроками. Не обучение а БОЛь! 100 раз уже пожалел что связался с данным курсом!
@Евгений-х7п9с
@Евгений-х7п9с 2 жыл бұрын
43:21 Сложно оч сложно, но куда деваться надо учиться
@ПашаХарченко-е4и
@ПашаХарченко-е4и Жыл бұрын
Я наверное не прав, но в слайсе pizza в обычном reducers:{setItems()} кажется лишним, ведь мы массив items заполняем асинхронно уже через extraReducers, поправьте если не прав.
@archienomad5028
@archienomad5028 2 жыл бұрын
ну ты вообще красавчик
@petro-baklay
@petro-baklay Жыл бұрын
пример с шоколадкой зашёл
@mak_whisk
@mak_whisk Жыл бұрын
Спасибо
@vaich1738
@vaich1738 2 жыл бұрын
Благодарю
@Papandos-cw8we
@Papandos-cw8we Жыл бұрын
код меняется у автора от урока к уроку. Не обучение . а вылавливание картинки на видео...что там автор нового написал между уроками. Не обучение а БОЛь! 100 раз уже пожалел что связался с данным курсом!
@dota-bluewater4039
@dota-bluewater4039 Жыл бұрын
Напишите решения бага кто сделал чтоб все работало после 55 мин. Заранее спасибо)))
@crypto4elik
@crypto4elik Жыл бұрын
какого бага
@mikhailpakhomov72
@mikhailpakhomov72 5 ай бұрын
а если использую для запросов React Query от TanStack, надо ли все это в редаксе городить?
@Marylovesautumn
@Marylovesautumn 8 ай бұрын
Так хорошо все начиналось, делаю все за Денисом, не пропускаю ни урока, но открывая код смотрю он другой и как исправлять и как писать дальше вообще не понимаю. Придется бросить, работать так невозможно.
@warcraft.mp4889
@warcraft.mp4889 8 ай бұрын
Хз мне кажется если человек дошел до реакта, то он должен знать что такое промисы и асинхронность - это же все-таки основы жса. Не зная жс, странно идти в реакт.
@СтасСинельников-е7т
@СтасСинельников-е7т 6 ай бұрын
Обычно просто на проектах познается промисы и асинхронность, я проходил эту тему, но так как не делал более менее нормальных проектов на js, то и пробежался просто по этой теме, а в react уже столкнулся с этим
@jamjam3337
@jamjam3337 2 жыл бұрын
👍
@marinam4024
@marinam4024 Жыл бұрын
работает только отрисовка пицц и корзина) поиск, фильтрация по типу пиццы и её параметрам перестала работать) буду разбираться, как говорится, у самурая нет цели, есть только путь)
@VolodymyrOsmin
@VolodymyrOsmin Жыл бұрын
go ds?
@marinam4024
@marinam4024 Жыл бұрын
@@VolodymyrOsmin я уже разобралась и закончила проект, но спасибо ^^
@ctoznaet
@ctoznaet Жыл бұрын
я захотела шоколадку
@TheVanshot
@TheVanshot 2 жыл бұрын
Почему два запроса на бэкенд идет? Объясните пожалйста
@ArchakovBlog
@ArchakovBlog 2 жыл бұрын
Удали StrictMode из index.js
@TheVanshot
@TheVanshot 2 жыл бұрын
@@ArchakovBlog Спасибо большое, где-нибудь в этом курсе объясняется почему так происходит?
@andTutin
@andTutin 2 жыл бұрын
@@TheVanshot так стрикт мод работает. он маунтит твой компонент, анмаунтит и маунтит заново. отсюда два запроса.
@Курманский
@Курманский 2 жыл бұрын
Все четко и по делу
@amirinasalamov355
@amirinasalamov355 2 жыл бұрын
BORZ!
@oldniksun2275
@oldniksun2275 Жыл бұрын
А почему в итоге пропадают товары из корзины при обновлении?
@vladimira.815
@vladimira.815 2 жыл бұрын
Спасибо большое тебе за уроки! Вопрос: Если мы храним логику в компоненте, то можно на одной странице вызвать два компонента Пиццы с разными данными (по пропсам), а в ситуации же когда логика в редаксе, при вызове двух одинаковых компонентов с разными пропсами (например разная ссылка на апи) - инишл стэйт массив пицц будет перемешиваться и некорректно выводить данные. Как это побороть?
@vladimira.815
@vladimira.815 2 жыл бұрын
upd. похоже единственный вариант это создавать отдельный слайс для каждого вида компонента
@СергейБойко-м1ъ
@СергейБойко-м1ъ 5 ай бұрын
setTimeOut( ) и setInterval( ) разве не асинхронные в JS? Почему ж нету - есть
@ИгорьНагибин-ч7н
@ИгорьНагибин-ч7н 2 жыл бұрын
Есть у кого готовый исходник данного урока? На бусти не нашел исходники, а у меня где-то ошибка из-за переписанного кода до этого, не могу найти
@imrondev
@imrondev 2 жыл бұрын
Подскажите а почему автор в thunk fetchPizzas деструтуризацию в отедльной строчке? не легче ли это сделать сразу в скобках вместо того чтобы писать (params)? или это сделано чтобы не писать слишком много в одной строчке?
@weynemeynen
@weynemeynen 2 жыл бұрын
axios не через fetch работает, а через XmlHttpRequest
@demptd13
@demptd13 2 жыл бұрын
код из этого урока и 16 сильно отличается... и если сделать все, как в этом видео, то запрос на получение пицц не отправляется
@Андрей-б7о5л
@Андрей-б7о5л 2 жыл бұрын
нашел решение пару часов сидел)
@demptd13
@demptd13 2 жыл бұрын
@@Андрей-б7о5л я тоже... но обнаружил ещё ряд проблем ...
@Андрей-б7о5л
@Андрей-б7о5л 2 жыл бұрын
@@demptd13 смотри в home useEffect(()=>{ fetchPizzas() },[]) в слайс [fetchPizzas.fulfilled]: (state, action) => { state.items=action.payload }, не уверен что правильно но работает
@Андрей-б7о5л
@Андрей-б7о5л 2 жыл бұрын
@@demptd13 отпишись если и у тебя пройдет по любому у кого-то будет та же проблема
@GUNTRUP_
@GUNTRUP_ 2 жыл бұрын
@@Андрей-б7о5л чувак ,у меня такая же проблема ,уже неделю пытаюсь исрпвить ,в масив айтемов просто ничего не отправляется ,что делать ? как ты испраивл ошибку ?
@thomasgabe3588
@thomasgabe3588 2 жыл бұрын
В данном проекте мало данных (всего 10 пицц). Не лучше ли было сохранить их всех в наш стейт в редюсере одним запросом и выводить через .filter в соответствии с нашими сортировками/категориями/поиском? Или мы в данном курсе это делаем просто чтобы лучше усвоить запросы?
@ArchakovBlog
@ArchakovBlog 2 жыл бұрын
Второе
@AleksMine
@AleksMine 2 жыл бұрын
Подскажи, как реализовать то что ты описал, хочу попробовать сделать именно так
@thomasgabe3588
@thomasgabe3588 2 жыл бұрын
@@AleksMine ну собственно вся логика и так описана, что именно не получается? Делаем один запрос без фильтров и загружаем все пиццы какие есть. При выводе, используя js выводим выводим только то что нужно (условно надо только «веганские», берём все пиццы и с помощью функции filter выбираем только их, далее выводим)
@serhiikhotsyk869
@serhiikhotsyk869 Жыл бұрын
Я так поиск сделал, так как на мокапи он плохо работает вместе с сортировкой. Плюс еще пагинацию сделал на фронте, получаю весь массив пицц, а потом в зависимости от страницы, с помощю слайса достаю нужные мне элементы. В итоге могу адекватно отобразить общее к-ство страниц, а если пицц хватает только на одну страницу, то вообще убирать пагинацию.
@bjiastx
@bjiastx 2 жыл бұрын
Так async/await это просто синтаксический сахар поверх промисов.. это ж не две разные штуки ..
@harrisonwinston2850
@harrisonwinston2850 2 жыл бұрын
нет, есть много причин, почему это не так, можешь ознакомиться с оф. документацией.
@thomasgabe3588
@thomasgabe3588 2 жыл бұрын
Бизнес-логику хранят именно в Слайсах или все же выносят куда-то в отдельный файл?
@harrisonwinston2850
@harrisonwinston2850 2 жыл бұрын
я писал бы слайсе, т.к. он за конкретную логику отвечает(как в видео), но в старом "обычном redux" её выносили в отдельным файл и именовали так - "какое_действиеAsync"
@di.saturn
@di.saturn 2 жыл бұрын
а почему не мы createAsyncThunk, а не RTK Query? или он нам тут не подходит?
@archieankaev7741
@archieankaev7741 Жыл бұрын
через builder ребята делайте, а то устарело через ключи(
@АленаГурков
@АленаГурков Жыл бұрын
Когда делаю специально ошибку в get запросе - ошибку не выдает на страницу,хотя jsx изменила, сами пиццы нормально получаю и отображаются на старнице. КТО-ТО МОЖЕТ СТАЛКИВАЛСЯ С ЭТИИМ?
@YulVilaya
@YulVilaya Жыл бұрын
на 53 минуте я начала сомневаться что смогу стать фронтенд разработчиком (((( очень сложные темы 😒😒😒
@thegodofshame1550
@thegodofshame1550 Жыл бұрын
У вас все получится!
@Mike37373
@Mike37373 Жыл бұрын
сейчас как ? и что толкнуло тебя им стать ?
@YulVilaya
@YulVilaya Жыл бұрын
@@Mike37373 сейчас все лучше) понимание асинхронности приходит со временем, я поянла что многие темы в программировании нужно прочитать раз по 7-10 только тогда начнешь понимать. Я взяла проект на фриласне сейчас, но он на Vue(Nuxt), на реакт я так и не работала, но эти уроки Арчаков Блог мне очень помогли, если реакт поймете то b vue не составит труда. На мой личный (возможно неправильный взгляд) vue и react очень сильно похожи, только в реакт чуть больше все запутано (для какой цели - не нам с вами рассуждать конечно)
@kenanhaciyev3759
@kenanhaciyev3759 Жыл бұрын
klasss
@YulVilaya
@YulVilaya Жыл бұрын
скажите, это все нужно знать джуну? это я еще до ts не дошла
@Калабарака
@Калабарака Жыл бұрын
Да, + TS практически MUST уже везде
@ivanshalaginov548
@ivanshalaginov548 Жыл бұрын
Почему нельзя делать все на видео, между уроков что то меняется, что не показано, потом ломаешь голову что ты там делал за кулисами
@yastrebov_dev
@yastrebov_dev Жыл бұрын
Друг, там всё понятно, просто немного больше внимания)
@Papandos-cw8we
@Papandos-cw8we Жыл бұрын
@@yastrebov_dev там код меняется у автора от урока к уроку. Не обучение . а вылавливание картинки на видео...что там автор нового написал между уроками. Не обучение а БОЛь! 100 раз уже пожалел что связался с данным курсом!
@pro100web-o5t
@pro100web-o5t Жыл бұрын
@@Papandos-cw8weон не каждый урок это делает. Просто 15 урок был перезаписан, вот так и кажется
@Papandos-cw8we
@Papandos-cw8we Жыл бұрын
@@pro100web-o5t даже финальный вариант работает криво, так что о чем речь?!
@lesjoni8347
@lesjoni8347 Жыл бұрын
Объясните мне, я начинающий, у нас есть redux toolkit где есть thunk, а ещё я слышал про просто redux thunk. Это одно и тоже или в redux toolkit уже встроен redux thunk?
@Alias_s
@Alias_s Жыл бұрын
в redux toolkit уже встроен redux thunk
@Aurum-Boss
@Aurum-Boss 2 жыл бұрын
Сложно, но можно :).Я так понял к этому уроку мы перестали юзать const isSearch = React.useRef(false) и ниже связку с isSearch.Урок классный!!!
@ArmTool
@ArmTool Жыл бұрын
Не могу понять в каком уроке он добавил fetchPizzas?
@Калабарака
@Калабарака Жыл бұрын
в этом же ж , нет ?
@alposha
@alposha 2 ай бұрын
15
CompTIA DataX DY0-001 Practice Exam Questions vol. 2
2:14
Disrespect or Respect 💔❤️
00:27
Thiago Productions
Рет қаралды 42 МЛН
Players vs Pitch 🤯
00:26
LE FOOT EN VIDÉO
Рет қаралды 130 МЛН
Асинхронная работа с Redux Toolkit и createAsyncThunk
42:24
Михаил Непомнящий
Рет қаралды 107 М.
SENIOR on JUNIOR Javascript Developer interview
26:35
BELOV
Рет қаралды 350 М.
Redux простым языком
30:09
Дмитрий Герасимов - о разработке в сфере IT просто
Рет қаралды 7 М.