Pytania rekrutacyjne React (Senior) z odpowiedziami
75 pytań na rozmowę rekrutacyjną z tematu React (Senior) - z poprawnymi odpowiedziami, wyjaśnieniami i linkami do dokumentacji.
Rozwiąż ten test- 1.Dlaczego
cache()z React przydaje się w Server Components? - 2.Czym jest Fiber w React?
- 3.Czym faza render różni się od fazy commit?
- 4.Co renderowanie współbieżne daje użytkownikowi?
- 5.Co dzieje się podczas hydratacji?
- 6.Jaki kod w renderze typowo powoduje błąd hydratacji?
- 7.Czym jest selektywna hydratacja w React 18+?
- 8.Jak działa streaming SSR (
renderToPipeableStream)? - 9.Czym Server Components różnią się od komponentów klienckich?
- 10.Co robi dyrektywa
'use client'na początku pliku? - 11.Jak wyrenderować Server Component wewnątrz klienckiego
<Modal>? - 12.Których propsów nie można przekazać z Server Component do Client Component?
- 13.Co ważnego trzeba pamiętać o funkcjach
'use server'pod kątem bezpieczeństwa? - 14.Do czego służy
useEffectEvent? - 15.Co robi komponent
<Activity mode="hidden">(React 19.2)? - 16.Do czego służy
useImperativeHandle? - 17.Co robi ten hook?
- 18.Czym jest tearing przy renderowaniu współbieżnym?
- 19.Który z tych scenariuszy powoduje wyciek pamięci w aplikacji React?
- 20.Jak najdokładniej znaleźć, które komponenty są wolne podczas interakcji?
- 21.Dlaczego
useContextnie ma „selektorów” i jak się to obchodzi? - 22.Trzeba wyrenderować listę 100 000 elementów. Co zrobić?
- 23.Co stanie się z błędem rzuconym podczas renderu, jeśli nad komponentem nie ma error boundary?
- 24.Dlaczego podczas przejścia wewnątrz
startTransitionnie pojawia się już pokazany fallback Suspense? - 25.Co zmieniło się w
startTransitionw React 19? - 26.Co nowego jest w callback refach w React 19?
- 27.Jak w React 19 ustawić
<title>i<meta>z komponentu bez zewnętrznych bibliotek? - 28.Czy
useMemogwarantuje, że obliczenie nie powtórzy się przy tych samych zależnościach? - 29.Kiedy dopuszczalne jest wywołanie
setStatebezpośrednio podczas renderu? - 30.Kiedy
flushSyncjest uzasadniony? - 31.Do czego służy
createListenerMiddlewarew Redux Toolkit? - 32.Jak zrobić optymistyczną aktualizację w RTK Query?
- 33.Jaka jest sygnatura middleware Redux?
- 34.Dlaczego nie umieszcza się w store Redux promise'ów, instancji klas i funkcji?
- 35.Czym jest structural sharing w TanStack Query?
- 36.Jak poprawnie przekazać dane TanStack Query załadowane na serwerze do komponentów klienckich?
- 37.Dlaczego na serwerze nie można używać jednego globalnego
QueryClientdla wszystkich żądań? - 38.Jak poprawnie obsłużyć anulowanie żądań w TanStack Query?
- 39.Czym
useSuspenseQueryróżni się oduseQuery? - 40.Co trzeba podać w
useInfiniteQuery? - 41.Czy potrzebny jest Redux lub Zustand, jeśli dane serwerowe są już w TanStack Query?
- 42.Błąd „Invalid hook call”. Jaka jest najbardziej prawdopodobna przyczyna, jeśli kod komponentu jest poprawny?
- 43.Jaka zasada leży u podstaw React Testing Library?
- 44.Czym są komponenty headless UI i dlaczego wybiera się je do systemów projektowych?
- 45.Czym
keyna komponencie-wrapperze różni się odkeywewnątrz listy? - 46.Do czego służą API
preloadipreinitzreact-domw React 19? - 47.Dlaczego
React.memoz własną funkcją porównującą może być niebezpieczne? - 48.Jak React 18+ obsługuje
setStatena odmontowanym komponencie? - 49.Co daje TanStack Query w porównaniu z ładowaniem danych w
useEffectzuseState? - 50.Kiedy RTK Query usuwa dane ze swojego cache?
- 51.Czym
prerenderzreact-dom/staticróżni się od strumieniowego SSR? - 52.Co jest wysyłane do przeglądarki, gdy renderują się Server Components?
- 53.Dlaczego ten komponent zawiesza się na zawsze (lub w kółko pobiera dane)?
- 54.Co zmienia
useDeferredValue(query, "")z wartością początkową (React 19)? - 55.Czego React Compiler potrzebuje od twojego kodu, by bezpiecznie go optymalizować?
- 56.Kiedy
suppressHydrationWarningjest odpowiedni? - 57.Co dają opcje
onCaughtErrorionUncaughtErrorwcreateRoot(React 19)? - 58.Czym może zaszkodzić import jednej ikony z dużego pliku „barrel” (
index.tsreeksportującego wszystko)? - 59.Pole tekstowe na górze dużej strony powoduje ponowny render całej strony przy każdym klawiszu. Jakie jest najprostsze rozwiązanie?
- 60.Dlaczego
<ExpensiveTree />nie renderuje się tu ponownie, gdy zmienia się stanColorPicker? - 61.Co oznacza ostrzeżenie w teście „An update was not wrapped in act(...)”?
- 62.Dlaczego żądania sieciowe lepiej mockować przez Mock Service Worker (MSW) niż podmieniać
fetchw każdym teście? - 63.Dlaczego
useSyncExternalStoreprzyjmuje argumentgetServerSnapshot? - 64.Jak zagwarantować, że moduł z sekretami nigdy nie trafi do kodu klienta?
- 65.Gdzie React (17+) podpina swoje listenery zdarzeń?
- 66.Co robi
<link rel="stylesheet" href="/chart.css" precedence="default" />wewnątrz komponentu w React 19? - 67.Jak uniknąć kaskady, gdy Server Component potrzebuje dwóch niezależnych żądań?
- 68.Jak Server Component może rozpocząć pobieranie, a Client Component na nie poczekać?
- 69.Jak pozwolić użytkownikom spróbować ponownie, gdy error boundary pokazał fallback?
- 70.Jak przetestować jednostkowo własny hook?
- 71.Dlaczego przechowywanie elementów JSX w stanie to zwykle zły pomysł?
- 72.Co daje
producez Immera przy aktualizacjach głęboko zagnieżdżonego stanu? - 73.Dlaczego
onClick={() => select(item.id)}może zniweczyćmemow 1000 wierszach listy? - 74.Co stało się z
propTypesw komponentach funkcyjnych w React 19? - 75.Dlaczego error boundary nadal pisze się jako klasy (lub bierze z biblioteki)?