https://hook.eu1.make.com/l745h29yrjj2pp78eyrh4ppj5qxrgqet

Dołącz do kursu na fullstack developera — zapisy zamykamy 11.03
Sprawdź szegóły
React
|
21/9/23

5 popularnych antywzorców w React oraz jak ich unikać

5 popularnych antywzorców w React oraz jak ich unikać

Jak unikać typowych błędów podczas w React.js?

Chciałbym podzielić się moimi spostrzeżeniami na temat często spotykanych antywzorców w świecie React.js i podpowiedzieć, jak skutecznie omijać typowe pułapki w trakcie tworzenia aplikacji.

1. Brak korzystania z callbacka w funkcji useState
Niektórzy deweloperzy, zwłaszcza ci mniej doświadczeni, mają problem z pełnym zrozumieniem mechanizmu działania useState. Ksiązkowy komponent typu Counter może wydawać się prosty w analizie, jednak głębsze zgłębienie odkrywa pewne nieścisłości. W przypadku wielokrotnego wywołania setState, aktualizacje stanu mogą nie działać tak, jak byśmy tego oczekiwali. Głównie poprzez mechanizmu batchowania. Aby skutecznie temu zaradzić, warto bazować na callbackach, a nie tylko na przekazywaniu nowego stanu.

2. Nadużywanie useState
Zbyt częste poleganie na useState to inny powszechny błąd. Mając w aplikacji chociażby formularz rejestracyjny możemy zaobserwować nadmiarowe renderowania każdorazowego komponentu gdy zmienimy dowolną wartość jak choćby wprowadzanie imienia. Nieumiejętne stosowanie useState może prowadzić do niechcianych rerenderów, obniżając wydajność aplikacji.

3. Lekceważenie Referential Equality
Przy pracy z obiektami z React, niezmiernie istotne jest monitorowanie, czy dwa obiekty są de facto "identyczne". Brak uwzględnienia tej zasady może prowadzić do niepożądanych rerenderów. Hook useMemo jest chociażby dobrym narzędziem, które pomoże zaradzić temu problemowi.

4. Messy events
W aplikacjach opartych na React często można spotkać komponenty, które mają problem z precyzyjnym zarządzaniem zdarzeniami, jak choćby interakcje czy aktualizacje w formularzach. Użycie technik takich jak "currying" znacząco poprawia klarowność i uporządkowanie kodu.

5. It renders correctly
Jest to jeden z bardziej ironicznych antywzorców. Często napotykam na testy komponentów z komentarzem “komponent jest poprawnie renderowany”. Ale jakie jest tak na prawdę zadanie takiego testu? Warto się zastanowić nad rzeczywistą wartością testu i co on tam daje pod kątem stabilności projektu?

Obejrzyj poniższy film wideo:

Chcesz dowiedzieć się więcej?
Zapraszam do subskrypcji kanału Web Amigos na YouTube oraz dołączenia do naszego Newslettera.