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

React - komponenty klasowe w 2021r.

Object Storage Arubacloud
+1 głos
661 wizyt
pytanie zadane 3 maja 2021 w JavaScript przez rszczepanski02 Obywatel (1,180 p.)
Cześć! Kieruje do was pytanie dot. reacta.

Jestem już na dosyć dalekiej drodze w poznawaniu reacta. Potrafię budować mniej złożone aplikacje. W najbliższym czasie planuję zabrać się za MobX i Redux. Męczy mnie jednak temat związany z komponentami klasowymi.

Ostatnio przypadkiem trafiłem na artykuł, który wskazuje na to, że komponenty klasowe aktualnie są raczej nieużywane i powinno się stosować tylko komponenty funkcyjne. Artykuł był bardzo ubogi, nawet nie wiem czy mogę go nazwać artykułem, dlatego też kieruję pytanie do was. Dlaczego powinno się unikać komponentów klasowych w aplikacji react?

 

Pozdrawiam,

Radosław Szczepański

2 odpowiedzi

+3 głosów
odpowiedź 3 maja 2021 przez CubeStorm Pasjonat (15,020 p.)

Komponentów klasowych nie powinno się używać między innymi ze względu na Reactowe hooki, których można używać tylko w komponentach funkcyjnych. Dzięki hookom kod staje się krótszy i czytelniejszy. Inicjalizacja stanu i jego zmiana dzięki useState jest czytelniejsze i krótsza niż przy klasowym obiekcie state i wbudowanej metody setState. Kolejny świetny hook - useEffect zastępuje nam stare właściwości componentWillUpdate, componentWillUnMount i componentDidMount. Hooków jest wiele, useLayoutEffect, useContext, useMemo, useReducer, useCallback etc...

Samo stworzenie komponentu klasowego to więcej pisania kodu niż przy tworzeniu komponentu funkcyjnego. Dodatkowo dzięki komponentom funkcyjnym nie musi się martwić o this.

Myślę, że obecnie pisanie aplikacji w React przy użyciu komponentów klasowych możemy porównać do pisania aplikacji webowych w czystych językach programowania - od tego się odchodzi, służą do tego frameworki.

komentarz 4 maja 2021 przez rszczepanski02 Obywatel (1,180 p.)
Dzięki wielkie! Wyczerpująca temat odpowiedź :)

Pozdrawiam!
+2 głosów
odpowiedź 3 maja 2021 przez niezalogowany

Bo komponenty klasowe są nieco przestarzałe i potrzebują nieco więcej kodu niż komponenty funkcyjne.

od 16.8 mamy tzw  Hooki  których używamy tylko z komponentami funkcyjnymi.

"Ponadto klasy dezorientują zarówno ludzi jak i maszyny"

Polecam Ci dokumentację jest bardzo przyjaźnie napisana.

https://pl.reactjs.org/docs/hooks-intro.html

https://pl.reactjs.org/docs/components-and-props.html

Ogólnie rzecz biorąc komponenty klasowe zostają(nie ma planów usunięcia według dokumentacji) dlatego warto się z nimi oswoić i zaznajomić, ale aktualnie powinno się używać świeżych metod które pozwalają pisać mniej kodu i jest on prostszy do zrozumienia i czytania . Czyli Hooki i komponenty funkcyjne.

Tutaj masz fajny artykuł możesz nieco pogłębić wiedzę:

https://dev.to/danielleye/react-class-component-vs-function-component-with-hooks-13dg

Pozdrawiam i Miłej Nauki smiley

 

komentarz 4 maja 2021 przez rszczepanski02 Obywatel (1,180 p.)
Dzięki wielkie! :)

Pozdrawiam!

Podobne pytania

0 głosów
1 odpowiedź 99 wizyt
pytanie zadane 29 czerwca 2020 w JavaScript przez vishi7 Początkujący (430 p.)
0 głosów
1 odpowiedź 373 wizyt
pytanie zadane 7 kwietnia 2021 w JavaScript przez an0nymous123 Początkujący (280 p.)
0 głosów
1 odpowiedź 286 wizyt

92,565 zapytań

141,416 odpowiedzi

319,599 komentarzy

61,950 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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...