Kiedy używać memo, useMemo i useCallback?
Najpierw odpowiedz na głos lub w myślach, potem porównaj.
Odpowiedź
Najpierw sprawdzam, co naprawdę jest wolne. useMemo może zapamiętać wynik kosztownego obliczenia. useCallback pomaga zachować tę samą funkcję między renderowaniami, a memo może ograniczyć renderowanie komponentu przy niezmienionych props. To narzędzia do określonych problemów, nie obowiązkowa dekoracja każdego komponentu.
Jeżeli rodzic za każdym razem tworzy nowy obiekt props, może niweczyć część tych oszczędności. Czasem lepszym rozwiązaniem jest przeniesienie stanu bliżej miejsca użycia albo wyświetlanie tylko widocznych wierszy tabeli. Sprawdzam efekt profilerem, czyli narzędziem mierzącym wykonanie. Dostępne automatyczne optymalizacje zależą od wersji i konfiguracji projektu.
Dlaczego to ważne: Ważniejszy jest trafny wybór optymalizacji niż pamięć nazw hooków.
Możliwe dopytania: Czy useCallback sprawia, że sama funkcja liczy szybciej?
Jak poszło? Bądź szczery — „Jeszcze nie” dodaje pytanie do powtórki.
Zacznij od
- C-P01 · Czym jest React i czym jest komponent? — React, Next.js i frontend
- C-P02 · Czym różnią się props i state? — React, Next.js i frontend
- C-P04 · Do czego służy useEffect i co oznacza tablica zależności? — React, Next.js i frontend
Powiązane pytania
Dalsza lektura
- React: Synchronizing with Effects(otwiera się w nowej karcie)Docs; dostęp 22.10.2026. Cel efektów, cleanup i ochrona przed nieaktualnymi wynikami.