Как узнать программистов: 1. человек не моргает три минуты. 2. А потом сразу шесть раз 🤣💓
@ITKAMASUTRA4 жыл бұрын
О май гад)) А моргать надо учиться принудительно... иначе кабзда глазам 👀
@ruslankonychev11373 жыл бұрын
да...порой в глазах аж темнеет, но как же не хочется отрываться от программирования!
@yuritian8830 Жыл бұрын
Прочитал. Стал замечать как моргаю. И специально моргаю.
@n0escape Жыл бұрын
что такое моргать🤣
@SohoCode Жыл бұрын
у кого ошибка типа с dispatch, можно сделать так: в reduxStore: export type AppDispatch = ThunkDispatch в компоненте: const dispatch: AppDispatch = useDispatch()
Tакой рефакторинг супер! - ощущения облегчения - как будь то выкинул хлам с балкона и теперь все чисто и понятно) У кого что то не получилось - добро пожаловать в мой гит репозиторий - там полностью рабочая версия лежит!
@maxim.saharov2 жыл бұрын
Буду очень рад за поставленные звездочки в нем и приятного обучения самураям)
@maxim.saharov2 жыл бұрын
maxim-saharov - название на гит хабе
@maxim.saharov2 жыл бұрын
ReactKamasutra проект
@PoRoKLusT2 жыл бұрын
Спасибо за видео, учусь по нему. Вычитал из доки: useSelector можно типизировать следующем образом: const reducer = combineReducers({ tasksReducer, filterStatusReducer }); export type Reducer = ReturnType Потом создаем собственный типизированный хук на основе обычного useSelector: import { TypedUseSelectorHook, useSelector } from "react-redux"; const useTypedSelector: TypedUseSelectorHook = useSelector; В дальнейшем используем в приложении useTypedSelector() как обычно используем useSelector(). TS сразу будет показывать что передается в переменную без дополнительных манипуляций. Сделал, всё работает как задумано. ================================================= Чтобы типизировать useDispatch() нужно: В месте где у нас создается store прописать export type AppDispatch = typeof store.dispatch В компоненте прописать const dispatch: AppDispatch = useDispatch() Теперь можно вызывать dispatch в компоненте как обычно с использованием экшена, например dispatch(addTaskAction(task)); Если у вас созданы и описаны экшены он их сам подтянет и будет отображать при наведении какой экшен вызывается, что принимает и возвращает. Если в экшене описан только тип и нет payload, то в типизации экшена нужно добавить payload: null и в самом экшене тоже payload: null. По идее это лишнее и никак не скажется на коде, но без этого ts ругается.
Если у кого переполняется стэк, когда пытаетесь сделать follow, unfollow, проверьте, откуда какой именно follow/unfollow вы передаете в dispatch, скорей всего вы передаете туда саму же функцию, а не импортированный follow/unfollow
@petroherasymiv34172 жыл бұрын
Боже!!! Я два дня просрал, залайкайте, чтобы поднять в топ
уже жду 3 сезон - хочется увидеть новое интро и новые треки от Димыча)))
@VSJAQ4 жыл бұрын
Димыч, спасибо, что снимаешь видео даже в нынешних сложных обстоятельствах! Мини-бамблби крут! Как и ты ) Лучший урок React + TypeScript / useReducer & useDispatch
React + TypeScript + useReducer & useDispatch. Спасибо за наглядные примеры! В чем прелесть этого курса, так это масштаб, постоянные улучшения уже написанного, разнообразные подходы :)
@mordred41384 жыл бұрын
Димыч, хочу сказать спасибо вам за ваши уроки, ведь вы очень толково объясняете. Хоть я вряд ли сейчас могу устроится(мне 16), но программирование моё хобби, и этим я буду заниматься всегда
Димыч, спасибо тебе большое! Как обычно все супер понятно! Летим!
@ITKAMASUTRA4 жыл бұрын
Летим, друзья!! Хорошего обучения
@ВикторКысса-я8х4 жыл бұрын
Огромная благодарность за такой потрясающий материал!!! В названии видео я как понял вместо useReducer должно быть useSelector. Тема рефакторинга потрясающая, useSelector и useDispatch действительно помогают избавиться от лишних оберток и также опракидываний пропсов, + код становится более читабельным как по мне ) Летим в космос ! React + TypeScript
@maxim.saharov2 жыл бұрын
Спасибо, а то я думал что меня глючит) в уроке про useSelector, а в теме useReducer! Димыч ты же можешь исправить название темы, даже картинка к видео правильная. И так же меня поразило как много людей накопипастили в коменты слово useReducer)
Ура-ура, новый выпуск)) Я посмотрю его еще не скоро, но уверена, что он как и другие, просто бомбический 💥
@ITKAMASUTRA4 жыл бұрын
✊🚀🔥 спасибо за поддержку! Успехов в прохождении!!!
@ДмитроКравець-л2щ2 жыл бұрын
Спасибо за обучение useReduser и useDispatch
@ВладиславПузырев-ю8л4 жыл бұрын
После того как начал использовать хуки useSelector, useDispatch HOC'и кажутся такими громоздкими тем более если еще компоненты классовые. Спасибо за ролик!
@AlexNesterov-f5q4 жыл бұрын
Очередной выпуск и очередная крутая информация!!!!! Наилучший курс по реакт!!! useSelector - 🔥🔥🔥 useDispatch - 🚀🚀🚀 TypeScript - 😎😎😎
@rmelsov4 жыл бұрын
Божееее какая крутая песня!!!!!!!!! Лайк и коммент! Как я случайно нашел такое сокровище?!?!
@dimaruy29752 жыл бұрын
Очень круто обяснил про useReducer и useDispatch hooks. Спасибо!
@maxim.saharov2 жыл бұрын
лайк за таймлайны!) И Димыч ИСПРАВЬ НАЗВАНИЕ ТЕМЫ - в уроке про useSelector, а в теме useReducer! Даже картинка к видео правильная. И так же меня поразило как много людей накопипастили в коменты слово useReducer)
@gideonamweich72713 жыл бұрын
узнал о useDispatch, читал, искал видео, а тут видео у димыча.
@Snegurjan4 жыл бұрын
Ураааа,новое видео.Лайк до просмотра .Димыч ты крутой!!!💪🏻💪🏻💪🏻
@ITKAMASUTRA4 жыл бұрын
От души, бро ✊ летим🚀
@Vnikny4 жыл бұрын
Спасибо Димыч! Держитесь там, мы с вами! React TypeScript Хуки useReduser useDispatch
@kuko9323 жыл бұрын
есть работа!!!!!!!!!!!! летим!!!!!!!!!!!!!!!!!!!!!! плтаная подписка на димыча везде!!!!
@АлександрШатохин-н7г4 жыл бұрын
useReducer , useDispatch Летим дальше
@technical7774 жыл бұрын
React + TypeScript refactoring a class component into a functional component using a HOOK | Димыч спасибо за наглядный пример рефакторинга connect, mapStateToProps, componentDidMount на HOOK
Давно ждал тему useReducer useDispatch в React JS. Спасибо!
@kurt-miller4 жыл бұрын
#useSelector #useDispatch очень помогает сократить код! Мегаполезный рефакторинг, пошел внедрять в свой проект.
@marina-ej4qd9kc1wh8 ай бұрын
мне понравилось useSelector, спасибо, Димыч. Самураи! Есть кто живой? Кто на работу устроился, кто еще в процессе?
@Nikita-xe5kv4 жыл бұрын
Пришел с 55 серии первого плейлиста что бы попросить проверить SamuraiJS Social Network API. Вроде де бы перестали запросы работать выдаёт ошибку 500, заранее спасибо) Уже всё нормально!) Продолжаю вливать сюда почти всё своё время, хочу догнать вас. По кайфу это занятие, надеюсь меня возьмут на удалёнку куда нибудь. Спасибо тебе огромное) Продолжай бомбить!)
@zzhanat49053 жыл бұрын
самый лучший курс от крутого сэнсэя)
@viktorshcheplyagin95764 жыл бұрын
Ключевые слова: обожаю React, Typescript, Redux!! Отсебятина: Спасибо большое за твои видео! И вообще, всем белорусским it-блогерам! На удаленке, часто, вы - единственное мое it-общество) Критика: Дымыч, почему ты не пркдотвратил эпидемию макаронавируса в мире? Тыж самурай!
React hooks must use! Хуки великолепны, правда тут можно холиварить по поводу чистых компонент - но это такое, бизнес в приоритете. useSelector, useDispatch и очень интересный useEffect - все ясно и понятно). Спс Димычу за качественный контент.
@IlyaVasilikhin2 жыл бұрын
Спасибо огромное.... жаль курс заглох.... подчерпнул для себя много нового React + TypeScript / useReducer & useDispatch
@ruslanla46543 жыл бұрын
Димыч, спасибо за классное объяснение как всегда !! useDispatch и useReducer Typescript React применяем на практике реальный крутой большой проект
@djmobley6474 жыл бұрын
Димыч, ты лучший, спасибо огромное за курс!!!
@oduvanio4 жыл бұрын
React, redux, hooks, refactor!!! Димыч, спасибо за твои труды!
@kozimjonqosimov77894 жыл бұрын
Привет самурай видео Excellent
@ВладиславПузырев-ю8л4 жыл бұрын
Димыч, пусть у вас в Белоруссии все будет хорошо!! Жду новый ролик от тебя очень сильно, ты лучший учитель
@Yaroslav-ie3et4 жыл бұрын
Прикольный ты дядька. Продолжай свою работу
@antonmaksimau71953 жыл бұрын
больше философии, оч круто react, typescript, usereducer, usedispatch
@ГенаФес-ъ9з3 жыл бұрын
useReducer & useDispatch
@StepanVorobiov4 жыл бұрын
Я уже жить не могу без хуков, mapState для меня как что то из прошлого (не понимаю как некоторые продолжают их использовать). Спасибо за видео. Хотелось бы вкратце про mobX, а ещё больше про React Native!!! Вперёд Димыч!!!)
@StepanVorobiov4 жыл бұрын
а useReducer то как раз то и не было. И я его как раз не использую. Былоб интересно послушать про то где он действительно нужен!
@StepanVorobiov4 жыл бұрын
Заиспользовал. Нормальная тема особенно когда вокруг пучка компонент мутишь всякую логику и этот useReducer как раз получается редюсером в этом маленьком "приложение". Можно конечно и useState обойтись и кратче получитчя, но с редюсером выразительнее!)
@egoregorov79884 жыл бұрын
верым можам переможам)
@jaloliddinhazratqulov8914 жыл бұрын
Самый лучший учитель
@ITKAMASUTRA4 жыл бұрын
✊🚀🔥
@ՆարեկԳինոսյան4 жыл бұрын
Spasibo Dimych!!!
@iliaschet3 жыл бұрын
useReducer и useDispatch - супер, но очень хочется поскорее тему redux toolkit
Димыч, все супер как всегда. useSelector & useDispatch & like. Кстати у тебя в названии useReducer вместо useSelector. В добавок к импортам, скоро планируеш перейти на абсолютные пути? Вдруг кому-то пригодится: Для "Create React App" нужно создать jsconfig.json в корне проекта. И прописать в нем { "compilerOptions": { "baseUrl": "src" }, "include": ["src"] } после чего импорты можно прописывать из корня: import Button from 'components/Button';
@ITKAMASUTRA4 жыл бұрын
А вон как к файловой реструктуризации придём! Очень скоро начнём приходить! Это изменение тоже сделаем, спасибо
@ІльченкоАртем4 жыл бұрын
Посмотрел Диму и жить захотелось) React TypeScript useReducer useDispatch useSelector
@fexriimanzade41393 жыл бұрын
Спасибо бро
@xtereone3 жыл бұрын
Эх видел бы я это видео раньше) Прикиньте я из-за одного глобального элемента в state писал целую контейнерную компоненту! А мог просто написать две строчки useSelecor и useDispatch - ору с себя)
UseReducer UseDispatch Typescript Dimich ты супер)
@ITKAMASUTRA4 жыл бұрын
Спасибо за поддержку
@ВадимЛюманов Жыл бұрын
Ну и еще немаловажный эффект от хуков - меньше контейнерных компонент-оберточек. Вот и UsersContainer компонента стала ненужной, и ее можно смело того ... )
Может кому пригодится - при использовании useEffect: useEffect(() => { requestUsers(currentPage, usersOnPageCount, usersFilter) }, []) Не убирайте(!) пустой массив зависимостей - как на то будут указывать ворнинги - иначе вызов useEffect callback-а будет происходить постоянно. И соответственно, запросы на сервак - тоже. Будьте бдительны)
dispatch не хочет принимать в качестве аргумента thunk creator, только тип AnyAction, еще useEffect бесконечно диспатчит пользователей, хотя вторым аргументом стоит [] для одного вызова. Ничего не понимаю, видимо что-то поменялось, надо разбираться.Подозреваю, что нужно правильно типзировать applyMiddlware На диспатч не ругается при такой типизации const setUsersOnPage = (n: number) => { dispatch(handlingUsers(n, usersOnPage, searchFilter) as unknown as AnyAction) }
@batm1x2 жыл бұрын
типизировать диспатч для отправки санок можно так: export const useTypedDispatch = () => useDispatch() export type TypedDispatch = ThunkDispatch Вопрос по бесконечному срабатыванию useEffect еще стоит
@EgorPomidorov Жыл бұрын
@@batm1x тут опечатка видимо, нужно так const useTypedDispatch = useDispatch()