Zestawy rozmówBlog

Twoja wymarzona praca? Lets Git IT.
Interaktywna platforma przygotowująca do rozmów technicznych dla nowoczesnych programistów.

XGitHub

Platforma

  • Kategorie

Zasoby

  • Blog
  • O aplikacji
  • FAQ
  • Sugestie

Prawne

  • Polityka prywatności
  • Regulamin

© 2026 LetsGit.IT. Wszelkie prawa zastrzeżone.

LetsGit.IT/Kategorie/Next.js
Next.jseasy

Co robi dyrektywa `'use client'`?

Tagi
#use-client#client-component#react
Wróć do kategoriiPrzejdź do quizu

Odpowiedź

Oznacza plik jako granicę Client Component. Komponent (i jego zależności) trafia do bundla przeglądarki, więc możesz używać hooków i event handlerów.

Odpowiedź zaawansowana

Głębiej

`'use client'` mówi Next.js, że ten moduł jest **granicą Client Component**. Ten plik i wszystko, co importuje (w dół drzewa) trafi do bundla klienta i wykona się w przeglądarce.

To odblokowuje:

  • hooki Reacta (`useState`, `useEffect`, `useReducer`),
  • event handlery (`onClick`, `onSubmit`),
  • API przeglądarki (`window`, `localStorage`).

Konsekwencje

  • Client Components nie mogą importować modułów server-only (klient DB, `fs`, sekrety serwera).
  • Granica `'use client'` może urosnąć „przypadkiem”, jeśli importujesz za dużo — rośnie JS wysyłany do użytkownika.

Praktyka

  • Trzymaj `'use client'` małe i konkretne.
  • Fetch danych rób w Server Components i przekazuj serializowalne propsy w dół.
  • Stan po stronie klienta dodawaj tylko, gdy UI naprawdę tego potrzebuje.

Typowe pułapki

  • `'use client'` w layoucie/root i zamiana dużej części aplikacji w client-side JS.
  • Import ciężkich bibliotek do client boundary.
  • Czytanie `window` w trakcie renderu (rób to w `useEffect`, jeśli trzeba).

Powiązane pytania

Next.js
Hydration mismatch przy przełączaniu motywu: skąd się bierze i jak temu zapobiec?
#nextjs#react#hydration
Next.js
Do czego służą `useSearchParams()` i `useParams()` (i gdzie można ich używać)?
#params#search-params#hooks
Next.js
Co powoduje hydration mismatch w React/Next.js i jak to naprawić?
#hydration#ssr
#react
Next.js
Next.js App Router: Server Component vs Client Component — jaka jest różnica?
#nextjs#app-router#rsc