Для чего нужен useContext в React, простым языком

  Рет қаралды 15,500

Дмитрий Герасимов - о разработке в сфере IT просто

Дмитрий Герасимов - о разработке в сфере IT просто

Күн бұрын

Пікірлер: 75
@ЮрийДонников
@ЮрийДонников 2 жыл бұрын
Из всего ютуба самое понятное объяснение, спасибо большое
@artful_alpha
@artful_alpha 2 жыл бұрын
объяснил просто за счёт того что... 1) На функциях а не на классах что правильно и проще для начинающих. 2) Передача в контексте не каких-то тяжёлых в понимании для новичка объектов, логикии либо дескруктуризации - а простой строки. 3) Наглядное представление в одном файле, потому как при объяснении для новичков очень тяжело держать имена и содержания абстракций( по типу объектов) и при этом открывать, создавать, называть другие файлы. А тут все в одном файле с говорящими за себя названиями. p.S. Я писал туда без контекста, но дока и остальные видосы это представляют так запутано, хотя по сути это глобальный пропс-компонент, в который нужно обернуть компонент которому нужен будет этот пропс на любом из уровней. Спасибо за лаконичное объяснение
@ДмитрийВохмин-р1ы
@ДмитрийВохмин-р1ы 7 ай бұрын
Самое лучшее объяснение и не затянуто. Респект и уважуха!
@nixnemo
@nixnemo Жыл бұрын
Просто, понятно, лаконично. Автору огромное спасибо!
@miwanjaGR
@miwanjaGR 3 ай бұрын
Из всего ютуба самое понятное объяснение, респект
@mrhawking
@mrhawking Жыл бұрын
наконец я поняла, на кой черт мы в CreateContext что-то передаем, спасибо!))
@СергейЧе-б1к
@СергейЧе-б1к 10 ай бұрын
Первое адекватное обьяснение. Я видосов 5 посмотрел, и только сейчас уже стало все понятно, спасибо
@junior_diary
@junior_diary 2 жыл бұрын
Крутой контент, твои уроки по хукам самые лаконичные из всех, что я нахожу на ютубе. Вначале смотрю популярных ютуберов, потом на тебя попадаюсь и у тебя более понятно получается, жаль что мало просмотров.
@kseniiaazovtseva6139
@kseniiaazovtseva6139 11 ай бұрын
Наконец-то простое и понятное объяснение, спасибо большое)
@unknown.6914
@unknown.6914 11 ай бұрын
Посмотрел 5 видео по хуку useContext, бесспорно это видео вне конкуренции (мое личное мнение). Огромное спасибо автору!
@dez1ess
@dez1ess Жыл бұрын
лучшее объяснение на всём ютубе. Лайк + Подписка
@АлексейПащенко-у3с
@АлексейПащенко-у3с Жыл бұрын
Бро, твоя подача в разы лучше чем у WebDev, так держать!!!
@OTKA3
@OTKA3 Жыл бұрын
не сказал бы
@morelifetv1041
@morelifetv1041 2 жыл бұрын
Блинн хоть кто-то нормально объяснил, спасибо. Лайк и подписка
@АнтонПономарев-ч6б
@АнтонПономарев-ч6б 2 жыл бұрын
Согласен
@warwar-3
@warwar-3 2 жыл бұрын
Очень лаконично и просто объяснил! Спасибо! Лайк, подписка)
@CheapProject
@CheapProject 2 ай бұрын
Просто и чётко как всегда!
@NikOroferov
@NikOroferov 2 жыл бұрын
Комментарий приемлемой длины в благодарность за видео
@__online7250
@__online7250 2 жыл бұрын
Круто, очень понятно объяснил, как и обещал! Спасибо))
@racman9964
@racman9964 Жыл бұрын
спасибо за разборы! Очень понятно, быстро понимаешь что к чему
@l_Chunga_l
@l_Chunga_l Жыл бұрын
Спапсибо за самое понятное объяснение!
@AuezKemelov
@AuezKemelov Жыл бұрын
Спасибо большое, сразу стало понятно
@tazorprod.934
@tazorprod.934 Жыл бұрын
Коротко и ясно. Однозначно лайк
@evgenym.2137
@evgenym.2137 Жыл бұрын
Отличное объяснение. Ещё бы шрифт в VS Code сделать покрупнее для восприятия)
@bashkort_erete
@bashkort_erete Жыл бұрын
согласен, а то как бастрыкин через лупу смотреть надо
@MikhailKuklenkov
@MikhailKuklenkov Жыл бұрын
Класс, доходчиво объяснил!
@pulyvil3909
@pulyvil3909 3 ай бұрын
Супер, всё понятно
@admusmanov3009
@admusmanov3009 2 жыл бұрын
очень доходчиво объяснил спасибо!!!
@crn05
@crn05 26 күн бұрын
Спасибо большое!
@_SOMEONE_
@_SOMEONE_ Жыл бұрын
На фоне играет такая спокойная музыка, что я чуть не уснул) Просто я вчера уснул в 00:30 и проснулся в 6:30
@Дмитрий-л4с9х
@Дмитрий-л4с9х 2 жыл бұрын
Спасибо! Достаточно доступно и понятно.
@RewCSharp
@RewCSharp 9 ай бұрын
Спасибо за урок!
@kirill_prog
@kirill_prog 2 жыл бұрын
Очень понятно. Спасибо! 👍
@rubicund
@rubicund Жыл бұрын
Спасибо. Очень простое и годное объяснение. Только я спешун еще тот. Не досмотрев ролик до конца, уже пошёл искать, зачем нужно было передавать бесполезную строку, при вызове функции createContext.
@cen1aur
@cen1aur 7 ай бұрын
Отличное видео, подписка и лайк!
@itsMatrik
@itsMatrik Жыл бұрын
Кратко и полезно.Спасибо :)
@АннаЛопина-ч6н
@АннаЛопина-ч6н 2 ай бұрын
Спасибо, дошло)
@Ivanesenses
@Ivanesenses 2 жыл бұрын
Спасибо, хорошее объяснение
@farrukhx7143
@farrukhx7143 2 жыл бұрын
Отличная подача! Когда уже освоился с передачей и фокусами над пропсами, со временем надоедает их каждый раз прокидывать через 10500+ компонентов. Решил замахнуться на редакс, но что-то особо не пошло, многовато кода ради кода там. Вспомнил про useContext, по практикуюсь на нем пока, ну и ознакомлюсь с твоим плейлистом по mobx)
@dmitrii_gerasimov
@dmitrii_gerasimov 2 жыл бұрын
Попробуйте redux в связке с redux-tookit, это исправление проблемы связанной с избыточным написанием кода, которая уже стала стандартом.
@farrukhx7143
@farrukhx7143 2 жыл бұрын
@@dmitrii_gerasimov пробовал, чуть проще, но все равно кажется на мудрено. Но вернутся стоит, чтобы еще раз разобрать
@osmancho3185
@osmancho3185 Жыл бұрын
очень ясно изъяснили спасибо
@peterweyland117
@peterweyland117 Жыл бұрын
Спасибо 🙏
@НікітаКорчемний-г4ч
@НікітаКорчемний-г4ч 8 ай бұрын
походу нашёл золотой канал
@maxshine-qf7qg
@maxshine-qf7qg Жыл бұрын
Как же ты хорош
@zdAxel
@zdAxel Жыл бұрын
Супер, пасиба
@evgenya_pan
@evgenya_pan Жыл бұрын
Замечательное видео, одно из самых понятных из поиска на ютубе. Спасибо за ваш труд! Только делайте шрифт покрупнее, пожалуйста)
@dmitrii_gerasimov
@dmitrii_gerasimov Жыл бұрын
В новых видео делаю шрифт крупнее.
@ЕленаПономаренко-ш7ы
@ЕленаПономаренко-ш7ы 11 ай бұрын
спасибо!
@Bombilaz
@Bombilaz 3 жыл бұрын
Коротко и понятно , спасибо)
@timesyru
@timesyru Жыл бұрын
Спасибо большое за контент! Я правильно понял, что без провайдера, стейт становится глобальным? Какой в этом минус?
@dmitrii_gerasimov
@dmitrii_gerasimov Жыл бұрын
Без провайдера вообще не будет работать. Он же передаёт данные в компоненты.
@timesyru
@timesyru Жыл бұрын
@@dmitrii_gerasimov В данном моменте, на 5:06, при закомментированном провайдере, выводится значение, заданное в скобках createContext
@dmitrii_gerasimov
@dmitrii_gerasimov Жыл бұрын
Так в этом случае выводится не содержимое контекста, а заглушка.
@Denis-di6hc
@Denis-di6hc Жыл бұрын
талант
@zakiro4277
@zakiro4277 2 жыл бұрын
спасибо за урок только шрифт маленький, на нетбуке плохо видно
@true227
@true227 Жыл бұрын
Можете объяснить для чего useContextиспользуется на практике, в реальной работе? Не вижу смысла его использования при наличии стейт менеджера, например редакс, если же стейт менеджер отсутствует, то юзконтекст получается его аналогом
@dmitrii_gerasimov
@dmitrii_gerasimov Жыл бұрын
1. Например, чтобы сократить число библиотек. 2. У Вас большая вложенность и при отправке данных с помощью props может возникнуть ситуация, что куча свойств попадает в компоненты, но в них никак не используется. По сути, получаем, чтобы только отдать дальше. 3. Ну и никто не отменял личные предпочтения.
@Zreus-ry9el
@Zreus-ry9el Жыл бұрын
Это альтернатива redux или не совсем? В каких случаях использовать redux, а в каких context? Предполагаю, что выбор зависит от масштаба проекта, но в чем преимущества конкретной технологии?
@АртёмКотов-ш7ц
@АртёмКотов-ш7ц Жыл бұрын
Про масштаб вы написали верно. Отмечу еще несколько пунктов из личного опыта. 1. Соглашение на проекте. Стор если значение используется во многих иерархически независимых местах. Контекст для местных значений которые не используются после размонтирования конкретной страницы/компонента (не нужно специально чистить редьсер и приводить к первоначальному значению) 2. Стор плохо подходит для часто изменяющихся значений (отрисовка графиков реалтайме с частотой в 20мс, таймлайн для видео) Тут лучше контекст с useRef 3. Если вы хотите запихнуть в контекст значение и функцию его изменяющую, что часто делают, то это будет плохой идеей. Потому что, без доп. ухищрений, при изменении значения будут обновляться компоненты с функцией а не только значением 4. В большом проекте у вас очень много зависимостей кода и это приводит к проблемам. Вы думаете что контекст авторизации всегда будет верхним, но это может изменится и через пол года он будет взаимно связан с контекстом оплаты Есть еще много нюансов, но сходу не вспомнить
@Zreus-ry9el
@Zreus-ry9el Жыл бұрын
@@АртёмКотов-ш7ц спасибо!)
@dmitry9463
@dmitry9463 8 ай бұрын
Когда лучше использовать useContext, а когда useReducer?
@dmitrii_gerasimov
@dmitrii_gerasimov 8 ай бұрын
Зависит от ваших предпочтений. Это просто разные подходы к одному и тому же. Но часто контекст используют для каких-то библиотек, как например react-redux.
@ЕвгенийКузнецов-щ1ю
@ЕвгенийКузнецов-щ1ю Жыл бұрын
данные в провайдер можно запихать только на верхнем уровне? добавить еще на уровне ниже никак?
@dmitrii_gerasimov
@dmitrii_gerasimov Жыл бұрын
Да, конечно на любом, просто используйте "setContext": const [context, setContext] = useContext(Context);
@black_light
@black_light Жыл бұрын
Если нужно передать данные из одного компонента в другой - контекст подходит?
@dmitrii_gerasimov
@dmitrii_gerasimov Жыл бұрын
Да, вполне.
@vladivostok5010
@vladivostok5010 Жыл бұрын
Всё хорошо, но в мире ещё очень много людей кто может себе позволить только HD экран или смотрит в отдельном окне и ничего не видно. Пожалуйста побольше шрифт.
@ОлегТиновець
@ОлегТиновець Жыл бұрын
Необходимо увеличить шрифт
@druf5962
@druf5962 Жыл бұрын
вверх контекст нельзя передавать? только спускать вниз сквозь children?
@dmitrii_gerasimov
@dmitrii_gerasimov Жыл бұрын
Нельзя, но ничто не мешает использовать его в самом верхнем компоненте. Обычно так и делают.
@mainName777
@mainName777 2 ай бұрын
Удивительно насколько просто обьяснил, куча видосов с такой мутью.. ужас, так сложно обьясняют а тут чел за 6 минут бац всё по полочкам разложил
@legoghetto2689
@legoghetto2689 6 ай бұрын
Сходи к логопеду.
11.Three.js в React - Плавный zoom - своя реализация
7:11
Дмитрий Герасимов - о разработке в сфере IT просто
Рет қаралды 608
React 17: Хук useContext
18:31
Школа web-программирования Constcode
Рет қаралды 12 М.
Amazing remote control#devil  #lilith #funny #shorts
00:30
Devil Lilith
Рет қаралды 16 МЛН
Мама у нас строгая
00:20
VAVAN
Рет қаралды 9 МЛН
Learn React Hooks: useContext - Simply Explained!
15:46
Cosden Solutions
Рет қаралды 184 М.
Для чего нужен useReducer в React,простым языком
10:54
Дмитрий Герасимов - о разработке в сфере IT просто
Рет қаралды 7 М.
Зачем на самом деле нужен хук useCallback
8:33
Михаил Непомнящий
Рет қаралды 44 М.
React JS #15 Контекст (React Context)
11:00
webDev
Рет қаралды 29 М.
Все что нужно знать о REACT для НОВИЧКА за 15 минут | Изучаем Реакт
15:12
Frontend Fundamentals | Александр Караджиков
Рет қаралды 28 М.
React useContext() hook introduction 🧗‍♂️
11:37
Bro Code
Рет қаралды 37 М.
Жизненный цикл React компонентов | Все что нужно знать за 12 минут
12:17
Frontend Fundamentals | Александр Караджиков
Рет қаралды 6 М.