Что выбрать: глобальные переменные или useThis()?

preview_player
Показать описание
Как вы знаете при переходе с компонентов классов на функциональные, у нас отняли такую полезную вещь как this, которая указывает на текущий экземпляр компонента. И люди по разному выкрутились из этой ситуации. В данном видео мы поделимся своим видением на данный вопрос.

Поддержать Айти Синяка можно здесь:

00:00 Анонс темы
00:25 Переменная в рамках useEffect
00:39 Глобальные переменные
00:55 Пример проблемы глобальных переменных
02:26 Документация рекомендует useRef()
03:44 useGetPrevValue()
05:06 Управление скролом в Телеграм
05:34 Подписывайтесь!

-------------------------

Данный канал создан для инициирования бесед на различные темы IT сферы (социальные / технические), а также для тех кому короткая видео выжимка статьи, выступления на конференции или же просто личных мыслей, являются более удобным форматом
Рекомендации по теме
Комментарии
Автор

Очень крутые видео на канале, структурированность, подача, анимации - всё на высоте! ✊

ITKAMASUTRA
Автор

зис - zees
вис/вьэс - this
виз - these
уиз - whiz

Cпасибо за видео.

VeaceslavBARBARII
Автор

Согласен, отличный канал, очень много полезного и интересного!

vmdbcqg
Автор

В одном из предыдущих видео говорилось, что планируется тема о UiKIt. Можно ли её ожидать в ближайшем времени? Было бы очень интересно)
Спасибо за Ваши видео!

la-vallet
Автор

1:31 а разве синтаксис spread на 12 строке в данном случае не будет вызывать лишние ререндеры? Ведь spread всегда возвращает новый массив

vitaliyyasinskiy
Автор

давай видос про глобальный стейт (redux, mobx, effector etc) и что лучше для чего подходит

trustlang_ua
Автор

Обычно с timeout я использовал useState, где [timeout] = useState({value: null})

gldnsecrt
Автор

А есть в планах записать урок по поводу react portal ?

nikitakurochka
Автор

а можно сразу делать так?

let type = useRef('').current


и потом сразу присваивать так

type = ...

bakaleisanich
Автор

Спасибо большое за проделанную работу. В вашем случае можно через переменную вместо useRef.

export default () => {
let timeout = null;
const onClick = () => clearTimeout(timeout);

useEffect(() => {
timeout = setTimeout(() => {
console.log('===>')
}, 3000);
}, []);

return <button onClick={onClick}>stop timer</button>
}

serhiiazizov
Автор

1:14 почему в setStateCounter передается стрелочная функция, а не просто значение stateCounter+1 ? Так тоже можно делать?

sergeykhairulin