Size: a a a

React — русскоговорящее сообщество

2020 November 22

K

Kaz in React — русскоговорящее сообщество
Eagle Owl Yoll
Лучше опираться на время, и считать разницу между текущей датой и датой старта таймера, имхо. Так надёжнее в ряде случаев. Ну и интервал можно по чаще, чтобы секунды в глазах у юзера не прыгали.
В общем, вот так работает, но таймер не очищается и при повторном нажатии на "Повторить" после окончания таймера начинается психодел с таймером)
источник

RV

Roman Vasilev in React — русскоговорящее сообщество
Vlad
во первых clearTimeout надо вынести внутрь таймаута, иначе ты сразу после инициализации его чистишь
во вторых clearTimeout вообще тут не нужен
это да, забыл в функцию обернуть, после очередных правок потерялась обертка. чуть ниже поправил. Вообще убрал пока что - не помогает...
источник

SM

Soltukiev Malik in React — русскоговорящее сообщество
Как правильно делается конвертер валют?
источник

Д

Денис in React — русскоговорящее сообщество
Kaz
Всем привет! Подскажите, как можно запустить useEffect после определенного действия? В моем случае нужно сделать кнопку повторной отправки смс после окончания 60 секунд таймера. А таймер должен запускаться после нажатия на кнопку "отправить СМС"
useEffect if (counter == 60) return Всё что захочешь
источник

SM

Soltukiev Malik in React — русскоговорящее сообщество
Soltukiev Malik
Как правильно делается конвертер валют?
Делать запросы каждые 3-5 сек?
источник

EY

Eagle Owl Yoll in React — русскоговорящее сообщество
Kaz
В общем, вот так работает, но таймер не очищается и при повторном нажатии на "Повторить" после окончания таймера начинается психодел с таймером)
Я обычно хелпер юзаю.

С ним более-менее просто при вызове из компонента.
https://gist.github.com/liamkernighan/9beeff73a7154630b5d127a0d46d26e8
источник

A

Andrey in React — русскоговорящее сообщество
Почему юзер на 54-ой строке не меняется? хотя useCallback подписан на его изменение и он меняется
источник

A

Andrey in React — русскоговорящее сообщество
в инпуте вызываю handleBlur('name')
источник

S

Stanislav in React — русскоговорящее сообщество
Andrey
Почему юзер на 54-ой строке не меняется? хотя useCallback подписан на его изменение и он меняется
а где собственно setUser?
источник

A

Andrey in React — русскоговорящее сообщество
Stanislav
а где собственно setUser?
юзер с редакса тянется
источник

A

Andrey in React — русскоговорящее сообщество
в useEffect выше выводит всё правильно
источник

Д

Денис in React — русскоговорящее сообщество
Andrey
юзер с редакса тянется
Но компонент ты не обновил.
источник

A

Andrey in React — русскоговорящее сообщество
Денис
Но компонент ты не обновил.
оно через селекторы тянется, нормально
источник

K

Kaz in React — русскоговорящее сообщество
Eagle Owl Yoll
Я обычно хелпер юзаю.

С ним более-менее просто при вызове из компонента.
https://gist.github.com/liamkernighan/9beeff73a7154630b5d127a0d46d26e8
источник

Д

Денис in React — русскоговорящее сообщество
Andrey
оно через селекторы тянется, нормально
Ты не обновил компонент.
источник

K

Kaz in React — русскоговорящее сообщество
Вот такое решение больше всего понравилось, но теперь не понимаю почему таймер не очищается
источник

A

Andrey in React — русскоговорящее сообщество
Денис
Ты не обновил компонент.
инпут типа? или эту страницу настроек?
источник

EY

Eagle Owl Yoll in React — русскоговорящее сообщество
Kaz
Вот такое решение больше всего понравилось, но теперь не понимаю почему таймер не очищается
Вероятно, потому что у тебя каунтер из-за условия никогда не бывает меньше нуля
источник

Д

Денис in React — русскоговорящее сообщество
Andrey
инпут типа? или эту страницу настроек?
Ты воспользовался эффектом без возврата
источник

K

Kaz in React — русскоговорящее сообщество
Eagle Owl Yoll
Вероятно, потому что у тебя каунтер из-за условия никогда не бывает меньше нуля
Бывает, я же его минусую на 1, после достижения 0 у меня кнопка становится активной
источник