React 18 — podchwytliwość useEffect

Dowiedz się o podchwytliwym zachowaniu hooka useEffect podczas korzystania z trybu Strict w React 18

Zdjęcie: Tim Gouw na Unsplash

React 18 jest dostępny już od kilku tygodni. Chociaż wprowadza kilka ulepszeń, wprowadza dość dziwne zachowanie do jednego z najczęściej używanych hooków. Chcesz wiedzieć, co to jest? No to ruszamy…

useEffect(), które powinno działać tylko przy początkowym montowaniu, działa dwukrotnie!

Tak, dobrze słyszałeś! Jeśli używasz Reacta 18 w trybie ścisłym, następujący fragment kodu:

Dałoby taki wynik:

Hello there!
Hello there!

Jak stwierdzono w dokumentacji , React 18 wprowadza nowy test tylko dla deweloperów do trybu Strict. Ten nowy test automatycznie odmontowuje i ponownie montuje każdy komponent, za każdym razem, gdy komponent jest montowany po raz pierwszy, przywracając poprzedni stan po drugim montowaniu.

Taką decyzję podjął zespół React, ponieważ w przyszłości chcieliby dodać funkcję, która pozwoli Reactowi dodawać i usuwać sekcje interfejsu użytkownika, zachowując stan. Ponieważ wymaga to, aby komponenty były odporne na wielokrotne montowanie i niszczenie efektów, wprowadzono dodatkową kontrolę.

Czyli każdy element jest montowany, potem demontowany, a na koniec ponownie montowany?

Tak, teraz tak to działa. Jeśli użyliśmy useEffect()haka w ten sposób:

Po odświeżeniu strony dane wyjściowe byłyby

Mounting...
Unmounting...
Mounting...

Streszczenie

React 18 wprowadza do trybu ścisłego nowy test tylko dla deweloperów. To sprawdzenie automatycznie odłącza i ponownie montuje komponent, dzięki czemu hak useEffect wystrzeliwuje dwukrotnie podczas początkowego montażu.

Suggested posts

Dwa lata projektowania – dobre, złe i brzydkie…

Dwa lata projektowania – dobre, złe i brzydkie…

„Hej, Siri, zagraj w Me Dive autorstwa Olivii Dean”. W maju 2021 rozpocząłem staż w Future Academy Africa w Akure w Nigerii.

Wyzwanie czytelnicze Goodreads jest toksyczne

Wyzwanie czytelnicze Goodreads jest toksyczne

Swędzenie w mojej dłoni rozszerzyło się, gdy targowałem się z miejscowym księgarzem o kolejną książkę. Ta książka, podobnie jak pozostałe, które ostatnio kupiłem, znalazłaby swój tron ​​na moim stosie „Do przeczytania” (TBR); a mimo to kupiłem.

Related posts

Ponowne przemyślenie mediów: pięć prawd McChesneya i przyszłość komunikacji

W dzisiejszym hiperpołączonym świecie systemy medialne odgrywają kluczową rolę w kształtowaniu opinii publicznej, a co za tym idzie, w demokratycznym procesie decyzyjnym. W swojej dogłębnej analizie ekonomii politycznej komunikacji uczony Robert McChesney kwestionuje konwencjonalną wiedzę i przedstawia to, co nazywa „pięcioma prawdami” o mediach.

Rewolucja w miejscu pracy: najlepsi eksperci omawiają pracę hybrydową i zdalną

Rewolucja w miejscu pracy: najlepsi eksperci omawiają pracę hybrydową i zdalną

W dzisiejszym szybko zmieniającym się krajobrazie biznesowym koncepcja pracy hybrydowej i zdalnej nabrała bezprecedensowego rozpędu. Ponieważ firmy wciąż dostosowują się do zmieniających się potrzeb i oczekiwań swoich pracowników, eksperci z różnych dziedzin zebrali się, aby omówić korzyści, wyzwania i przyszłość tego transformacyjnego sposobu pracy.

Prześladowania chrześcijan: przestępstwo z nienawiści, o którym nie mówimy

Zapomnij o islamofobii: Chrześcijanie (i Żydzi) są głównymi ofiarami przestępstw z nienawiści na tle religijnym.

Prześladowania chrześcijan: przestępstwo z nienawiści, o którym nie mówimy

Każdy racjonalnie myślący wie, że w kręgach politycznych i medialnych dominuje lewica, nawet skrajna lewica, co powoduje zachwianie równowagi w dyskursie politycznym. W dziedzinie religii ta nierównowaga jest wyraźnie widoczna: lewicowe gazety i sieci nie spieszą się z obroną wiary chrześcijańskiej.

Tworzenie bezpiecznego środowiska pracy

Tworzenie bezpiecznego środowiska pracy

„Będzie mnie chronił, gdy będę w niebezpieczeństwie. Ukryje mnie w swoim namiocie.