Wydano wersję React 19.2 – a nie React 20
Jeszcze nie ma React 20. React 19.2 dodaje funkcję useEffectEvent, opcję Activity, lepsze śledzenie w DevTools oraz bardziej płynne działanie Suspense — warto więc już teraz dokonać aktualizacji.
Ruch wyszukiwawczy dotyczący „React 20” jest intensywny, ale informacje o faktycznej publikacji są bardziej praktyczne niż tylko plotki o nowej głównej wersji.
Jeszcze nie ma wersji React 20. To, co faktycznie zostało wydane, to React 19.2, a zmiany są na tyle istotne, że ludzie słusznie zakładają, iż musiała pojawić się nowa główna wersja.
Co faktycznie pojawiło się w 19.2
useEffectEvent zapewnia funkcjom typu Effects stabilny sposób na odczytywanie najnowszych wartości propów i stanu, bez konieczności dodawania tych wartości do listy zależności (monitorowana pod numerem issue #22646). Stary sposób obejścia polegający na przechowywaniu wartości w useRef, aby uniknąć przestarzałych zamykań, staje się w tym przypadku niepotrzebny.
// before: ref juggling to avoid stale closures
const onScrollEvent = useEffectEvent((currentTheme) => {
logScrollPosition(currentTheme);
});
useEffect(() => {
const handler = () => onScrollEvent(theme);
window.addEventListener('scroll', handler);
return () => window.removeEventListener('scroll', handler);
}, []); // theme intentionally left out — useEffectEvent handles it
Activity utrzymuje stan komponentu aktywny, jednocześnie ukrywając go przed DOM-em. To jest przydatne w przypadku kart, tras poza ekranem oraz list, gdzie pozycja przewijania powinna zostać zachowana po opuszczeniu i ponownym wejściu na stronę.
Chrome DevTools teraz w sposób natywny pokazuje fazy renderowania i komitowania w React w ramach ścieżek wydajności React. Można zobaczyć, które operacje spowodowały opóźnienie w renderowaniu, bez konieczności domyślania się na podstawie ogólnych danych z profiliowania.
Suspense również uległ udoskonaleniu: zagnieżdżone granice powodują mniej nieoczekiwanych problemów, a przejścia awaryjne są płynniejsze, gdy treść jest ładowana stopniowo.
Dlaczego to coś więcej niż tylko numer wersji
Korzyści dla programistów na co dzień nadal stanowią priorytet w planie rozwoju: funkcje, które najczęściej są wprowadzane, eliminują konkretne problemy, bez konieczności wprowadzania zupełnie nowego modelu myślenia o React. — Streszczenie z raportu „State of React” z 2026 roku
Taki podejście odpowiada kierunkowi rozwoju produktu. React nie dąży do efektownego oznaczenia wersji v20. Skupia się na eliminacji codziennych problemów: przestarzałych mechanizmów w Effects, nieudostępnionych funkcji w DevTools oraz utraty stanu interfejsu, gdy ekran jest tymczasowo niewidoczny.
Co robić właśnie teraz
- Zaktualizuj się do wersji 19.2, jeśli nadal używasz 19.0; ta wersja ma zapewniać zgodność wsteczną.
- Zastąp triki oparte na refach w Effect funkcją
useEffectEvent, gdy potrzebujesz jedynie najnowszych wartości bez konieczności ponownego subskrybowania. - W przypadku interfejsów z wieloma kartami lub w stylu przewodnika, spróbuj użyć Activity zamiast dodawania kolejnej biblioteki do zarządzania stanem wyłącznie po to, by zachować ukryte ekrany.
- Łącz tę wersję z React Compilerem (stabilnym od końca 2025 roku), aby manualne użycie
useMemoiuseCallbackmogło zostać ograniczone tam, gdzie kompilator już zajmuje się memozacją.
Jak to pasuje do szerszego kontekstu
Te aktualizacje doskonale współistnieją z komponentami serwerowymi Next.js, bardziej rygorystycznym mechanizmem inferencji w TypeScript oraz podejściem do stylizacji opartym na funkcjach użytkowych w Tailwind CSS. Powszechny stack JavaScriptu typu full-stack wciąż się integruje, zamiast dzielić na konkurencyjne obozy.
Aby uzyskać wiarygodne informacje, warto korzystać z oficjalnego bloga React oraz dokumentacji dotyczącej wersjonowania React, zamiast z drugorzędnych przeglądów „React 20”. Oficjalne dokumentacje są bliższe temu, co faktycznie trafiło do użytkowników.
Krótko mówiąc: cykl hajpu wyprzedził cykl wypuszczania nowych wersji. React 19.2 już teraz warto zainstalować ze względu na konkretne ulepszenia w obszarze Effect, Activity, DevTools i Suspense. Trzymaj się źródła, aktualizuj wtedy, gdy to pasuje do twojego aplikacji, a będziesz gotowy, gdy pojawi się prawdziwa duża wersja.
Literatura pokrewna
- Firebase Auth i Firestore w Next.js bez Flat Collections — Ochrona pojedynczej instancji aplikacji Firebase, umożliwienie pomocnikom autoryzacyjnym rzucania błędów typowanych, układanie treningów pod każdym użytkownikiem oraz weryfikacja zapisów za pomocą emulatorów.
- Dlaczego JavaScript nadal dominuje w 2026: zamknięcia, asynchroniczność, strumienie i warstwy narzędzi — Zamknięcia, kompozycja obietnic, AbortController, iteratorzy, strumienie, WeakMap oraz dynamiczne importowanie — plus informacje o tym, w jakich przypadkach nadają się Node, TypeScript, React i Angular.