• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

react redux javascript stan

VPS Starter Arubacloud
0 głosów
150 wizyt
pytanie zadane 18 sierpnia 2020 w JavaScript przez rob Bywalec (2,440 p.)

Witam, 

Mam problem z cleaarInterval() bo interval jest w useEffect ponieważ powstawała pętla nieskończona, ale dlatego, że jest w useEffect nie potrafię aktualizować stanu wewnątrz i wyczyścić odliczania jeżeli zajdzie potrzeba. Jak sobie poradziś z takim problemem?

Effekt jest taki. że po dodaniu nowego todo i ustawienia mu alarmu uruchamia się odliczanie i po upływie zadanego czasu jest uruchamiany alarm. Wszystko gra, ale nie do końca, bo jeśli użytkownik zechce wyłączyć alarm, klika w czerwoną ikonkę stan zmienia się więc zmienia się ikonka na szarą ale stan nie "dochodzi" do wewnątrz useEffect więc musi upłynąć czas i uruchomić się alarm. Jeżeli ktoś chciałby spróbować to po wybraniu  ADD a dalej daty w celu uruchomienia alarmu trzeba wybrać opcję date z prawej strony czyli alarm uruchomi się dokładnie po upływie zadanego czasu, (w planach mam możliwość uruchomienia np 30min wczesniej)

Jest jakiś sposób aby to rozwiążać? proszę o pomoc.

live

https://robkot500.github.io/to_do/

code

https://github.com/robkot500/to_do/tree/master

 

komentarz 18 sierpnia 2020 przez ScriptyChris Mędrzec (190,190 p.)
Które pliki w repo zawierają problematyczny kod?
komentarz 18 sierpnia 2020 przez rob Bywalec (2,440 p.)
CountDown.js i ItemReducer.js

1 odpowiedź

0 głosów
odpowiedź 18 sierpnia 2020 przez ScriptyChris Mędrzec (190,190 p.)
wybrane 19 sierpnia 2020 przez rob
 
Najlepsza

Próbowałeś czyścić interwał w funkcji zwróconej przez useEffect?

https://en.reactjs.org/docs/hooks-effect.html#example-using-hooks-1

komentarz 18 sierpnia 2020 przez rob Bywalec (2,440 p.)
nie bardzo to rozumię...
komentarz 18 sierpnia 2020 przez ScriptyChris Mędrzec (190,190 p.)

Z callbacka przekazanego do useEffect zwróć funkcję, w której wyczyścisz interwał.

komentarz 19 sierpnia 2020 przez rob Bywalec (2,440 p.)
wielkie dzięki :) działa

Podobne pytania

0 głosów
1 odpowiedź 115 wizyt
pytanie zadane 2 sierpnia 2020 w JavaScript przez rob Bywalec (2,440 p.)
0 głosów
1 odpowiedź 181 wizyt
pytanie zadane 27 września 2020 w JavaScript przez rob Bywalec (2,440 p.)
0 głosów
1 odpowiedź 345 wizyt
pytanie zadane 2 czerwca 2023 w JavaScript przez DzikieHarce Użytkownik (690 p.)

93,005 zapytań

141,971 odpowiedzi

321,251 komentarzy

62,344 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...