← Wszystkie tematy

Pytania rekrutacyjne React (Middle) z odpowiedziami

75 pytań na rozmowę rekrutacyjną z tematu React (Middle) - z poprawnymi odpowiedziami, wyjaśnieniami i linkami do dokumentacji.

Rozwiąż ten test
  1. 1.Kiedy React zachowuje stan komponentu między renderami?
  2. 2.Jak zresetować stan <EditForm /> przy przejściu do innego użytkownika?
  3. 3.Co robi React.memo(Component)?
  4. 4.Dlaczego memo nie pomaga <List items={data} onSelect={() => select(id)} style={{ gap: 8 }} />?
  5. 5.Do czego służy useMemo?
  6. 6.Dlaczego nie należy deklarować komponentu wewnątrz innego komponentu?
  7. 7.Jak useCallback(fn, deps) ma się do useMemo?
  8. 8.Kiedy useCallback jest naprawdę przydatny?
  9. 9.Kiedy useReducer jest lepszy niż useState?
  10. 10.Czym useLayoutEffect różni się od useEffect?
  11. 11.Dlaczego licznik zatrzymuje się na 1?
  12. 12.Dlaczego ten efekt wykonuje się po każdym renderze?
  13. 13.Jak uniknąć wyścigu przy ładowaniu danych w useEffect, jeśli userId szybko się zmienia?
  14. 14.Jak poprawnie uzyskać fullName z firstName i lastName przechowywanych w stanie?
  15. 15.Jakich błędów NIE łapie error boundary?
  16. 16.Co zmieniło się w React 19 w przekazywaniu ref do komponentów funkcyjnych?
  17. 17.Jak zachowują się zdarzenia wewnątrz portalu createPortal(child, document.body)?
  18. 18.Czym jest komponent wyższego rzędu (HOC)?
  19. 19.Na czym polega wzorzec render props?
  20. 20.Czym jest wzorzec compound components?
  21. 21.Dlaczego wszyscy konsumenci kontekstu przerenderowują się przy każdym renderze providera?
  22. 22.Po co dzielić kontekst na StateContext i DispatchContext?
  23. 23.Co robi useTransition?
  24. 24.Kiedy używać useDeferredValue?
  25. 25.Czym jest automatyczny batching w React 18+?
  26. 26.Do czego służy useId?
  27. 27.Do czego służy useSyncExternalStore?
  28. 28.Czym use(promise) z React 19 różni się od zwykłych hooków?
  29. 29.Co daje useActionState w React 19?
  30. 30.Do czego służy useOptimistic?
  31. 31.Co robi React Compiler?
  32. 32.Dlaczego React Hook Form jest zwykle szybszy niż formularze z kontrolowanymi polami?
  33. 33.Jak zachowują się zagnieżdżone granice <Suspense>?
  34. 34.Gdzie podział kodu przez lazy zwykle przynosi najwięcej korzyści?
  35. 35.Co jest nie tak z tym case reducerem w createSlice?
  36. 36.Jakie akcje generuje createAsyncThunk('users/fetch', ...)?
  37. 37.Skąd RTK Query wie, które dane pobrać ponownie po mutacji?
  38. 38.Czym jest RTK Query?
  39. 39.Co daje createEntityAdapter?
  40. 40.Dlaczego ten selektor powoduje re-render przy każdej akcji w store?
  41. 41.Kiedy Redux (lub Zustand) jest bardziej odpowiedni niż React Context?
  42. 42.Czym staleTime różni się od gcTime w TanStack Query?
  43. 43.Dlaczego TanStack Query z domyślnymi ustawieniami pobiera dane ponownie po powrocie do karty?
  44. 44.Jak zaktualizować listę po udanym utworzeniu elementu przez useMutation?
  45. 45.Które zapytania unieważnia invalidateQueries({ queryKey: ['todos'] })?
  46. 46.Jak zaimplementować optymistyczną aktualizację przez cache w TanStack Query?
  47. 47.Jak uruchomić zapytanie dopiero po otrzymaniu user.id z innego zapytania?
  48. 48.Jak przy paginacji pokazywać starą stronę, dopóki ładuje się nowa, zamiast szkieletu?
  49. 49.Co domyślnie robi TanStack Query przy błędzie zapytania po stronie klienta?
  50. 50.Po co useQuery ma opcję select?
  51. 51.Co jest nie tak z tym efektem?
  52. 52.Gdzie umieścić kod, który ma się wykonać, bo użytkownik kliknął „Kup”?
  53. 53.Dlaczego ten efekt czatu łączy się ponownie przy zmianie motywu?
  54. 54.Dlaczego ten efekt uruchamia się przy każdym renderze, choć options wygląda tak samo?
  55. 55.Jak komponent powinien subskrybować zdarzenie przeglądarki, np. resize?
  56. 56.Jak wygląda dobry własny hook?
  57. 57.Jak forwardRef ma się do React 19?
  58. 58.Co i kiedy pokazuje <Suspense fallback={<Spinner />}>?
  59. 59.Jakie zmienne stanu są tu potrzebne?
  60. 60.Jak uniknąć wielu flag logicznych, takich jak isSending, isSent, isError naraz?
  61. 61.Dlaczego ten komponent jest nieczysty?
  62. 62.Co się dzieje, gdy stan komponentu się zmienia, ale wynikowy JSX jest identyczny?
  63. 63.Co robi setCount(5), jeśli count już wynosi 5?
  64. 64.Jak zmierzyć rozmiar elementu tuż po renderze, zanim przeglądarka go narysuje?
  65. 65.Dlaczego lista pól kontrolowanych może tracić fokus przy każdym naciśnięciu klawisza?
  66. 66.Do czego służy komponent <Profiler>?
  67. 67.Dlaczego wywołanie setState w useEffect zależnym od userId w celu pobrania danych jest w porządku?
  68. 68.Jak useFormStatus pomaga w formularzu React 19?
  69. 69.Co robi <form action={saveAction}> w React 19?
  70. 70.Co zwykle sygnalizuje użycie Children.map lub cloneElement we współczesnym React?
  71. 71.Co się dzieje, gdy rodzic przekazuje inline onChange={() => {}} do zmemoizowanego dziecka?
  72. 72.Kiedy zmiana wartości useRef powoduje ponowny render?
  73. 73.Dlaczego nie należy czytać ani zapisywać ref.current podczas renderu?
  74. 74.Czym różni się komponent kontrolowany od niekontrolowanego w systemie projektowym?
  75. 75.Dlaczego useEffect z callbackiem async może być problemem?