Wpis z mikrobloga

#programowanie #react #reactjs
Czy ktoś może wytłumaczyć mi dlaczego plik w podstawowym Template Reacta
https://github.com/facebook/create-react-app/blob/master/packages/react-scripts/template/src/App.js
Został zmieniony z Class na arrow function a potem na function? Czy to przypadkiem nie jest regresja jeśli chodzi o pisanie w JS? #es6 ?
W komentarzach czytałem coś że wersja z Class jest out dated tylko dlaczego?
Skąd taki zabieg się pojawił?
  • 10
  • Odpowiedz
@cacus: Jest outdated bo hipsterzy którzy chcą zmieniać istniejący dobry kod tak stwierdzili. W tym przypadku jeżeli jest to zwykły komponent widokowy wyświetlający jakieś propsy to najlepszym zabiegiem będzie zrobienie go jako klasy i pureComponent
  • Odpowiedz
@cacus: przede wszystkim:
1. Tworzenie class components w react ma sens tylko wtedy gdy potrzebujesz trzymać w takim komponencie stan i zarządzać lifecycle
2. Arrow functions to nie są tak naprawdę funkcje. Używanie ich w react powoduje często problemy wydajnościowe więc może żeby nie nabywać złych nawyków wpychania gdzie się ich da twórcy postanowili zmienić je na funkcję.
3. Class nie jest outdated. Po wprowadzeniu hooks potrzeba ich stosowania będzie jeszcze
  • Odpowiedz