Стабильные и нестабильные значения в React

  Рет қаралды 794

easydev

easydev

Күн бұрын

Пікірлер: 10
@ТимофейЯременко-н4ж
@ТимофейЯременко-н4ж 9 ай бұрын
Изначально посыл неверный: в зависимости useEffect не нужно добавлять все, что используется в колбеке (т.к. useEffect не мемоизирует колбек в отличие от useMemo или useCallback) Так что надо было в самом начале видео оставить пустой массив зависимостей - и все.
@easydev1205
@easydev1205 9 ай бұрын
react.dev/reference/react/useEffect#specifying-reactive-dependencies
@ТимофейЯременко-н4ж
@ТимофейЯременко-н4ж 9 ай бұрын
​​@@easydev1205, а статье рассказывается о том как бороться с линтером - и самый простой способ это заткнуть его добавив все зависимости. Но ничего не сказано почему надо добавлять в зависимости еффекта то, от чего я не хочу зависеть (кроме обтекаемой фразы "это опасно")
@easydev1205
@easydev1205 9 ай бұрын
Это опасно потому что стейт должен быть синхронизирован. Иначе могут вылезти трудноуловимые баги. Что и логично, учитывая для чего вообще нужен useEffect и как он работает. В некоторых случаях можно подавить предупреждение линтера и всё будет работать корректно. Общее же правило для этой ситуации ясно описано в документации. Следовать ему или нет решать вам
@ТимофейЯременко-н4ж
@ТимофейЯременко-н4ж 9 ай бұрын
​@@easydev1205, useEffect нужен для реагирования на определенные изменения. Если мне не нужно реагировать на изменение функции fetch (как в вашем примере) а просто надо ее вызвать один раз при маунте компоненты (пустой массив зависимостей) или перевызвать ее при изменении каких-то аргументов (тогда эти аргументы следует поместить в зависимости но никак не саму функцию!) У вас очень неудачный пример в видео.
@easydev1205
@easydev1205 9 ай бұрын
useEffect нужен не для реагирования на определенные изменения, а для вызова side effect, о чём и говорит его название. А в зависимости вы помещаете стейт который нужно синхронизировать. У вас просто неверное понимание что такое useEffect, поэтому и вопросы такие возникают. Может сделаю отдельное видео об этом
@kreet4855
@kreet4855 9 ай бұрын
Полезно, спасибо!
@NikolayKasparov
@NikolayKasparov 9 ай бұрын
Понравился один урок подписался на этот канал, после этого отписался ❤
@easydev1205
@easydev1205 9 ай бұрын
Зря отписываетесь. Может ещё что-то полезное будет
ComponentPropsWithoutRef. React и TypeScript
7:33
easydev
Рет қаралды 644
The Joker wanted to stand at the front, but unexpectedly was beaten up by Officer Rabbit
00:12
How Strong is Tin Foil? 💪
00:26
Preston
Рет қаралды 130 МЛН
Every parent is like this ❤️💚💚💜💙
00:10
Like Asiya
Рет қаралды 15 МЛН
useSyncExternalStore и примеры практического использования
17:15
CI/CD - Простым языком на понятном примере
15:29
Артём Шумейко
Рет қаралды 41 М.
Программисты-самоучки... Слушайте внимательно.
22:45
Евгений Афанасьев
Рет қаралды 75 М.
React-приложение на TypeScript
41:29
Михаил Непомнящий
Рет қаралды 67 М.
Python VS С# | Согласен / Не согласен
14:27
Технологии в Контуре
Рет қаралды 28 М.