← Wszystkie tematy

Pytania rekrutacyjne z zarządzania stanem (Middle) z odpowiedziami

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

Rozwiąż ten test
  1. 1.Ile będzie wynosić count po jednym kliknięciu, jeśli wartość początkowa to 0?
  2. 2.Jak zresetować stan komponentu formularza po zmianie wybranego użytkownika?
  3. 3.Dlaczego przechowywanie kopii propa w stanie może być błędem?
  4. 4.Jak przekazać dispatch z useReducer głęboko w drzewo bez prop drillingu?
  5. 5.Po co jest trzeci argument init w useReducer(reducer, arg, init)?
  6. 6.Dlaczego wszyscy konsumenci kontekstu renderują się ponownie przy każdym renderze providera?
  7. 7.Komponent używa tylko theme z dużego AppContext, ale renderuje się przy każdej zmianie koszyka. Co pomoże?
  8. 8.Dlaczego React.memo nie pomaga komponentowi, który wywołuje useContext(CartContext)?
  9. 9.Czy Context jest biblioteką do zarządzania stanem?
  10. 10.Co się stanie przy zagnieżdżonych providerach tego samego kontekstu?
  11. 11.Kiedy lepiej umieścić wartość w Contexcie, zamiast przekazywać ją jawnie przez propsy?
  12. 12.Co jest nie tak z tym case reducerem?
  13. 13.Jakie akcje wysyła createAsyncThunk('users/fetch', fn)?
  14. 14.Dlaczego ten selektor renderuje komponent przy każdej wysłanej akcji?
  15. 15.Do czego służy extraReducers w createSlice?
  16. 16.Jak otypować useSelector i useDispatch w projekcie TypeScript?
  17. 17.Co daje znormalizowany stan ({ ids, entities })?
  18. 18.Co sprawdza configureStore w trybie deweloperskim?
  19. 19.Czy warto trzymać stan pól formularza (każde naciśnięcie klawisza) w Reduxie?
  20. 20.Dlaczego ten komponent renderuje się przy każdej zmianie store'a?
  21. 21.Dlaczego selektor zwracający nowy obiekt powoduje zbędne rendery (lub nieskończoną pętlę w v5)?
  22. 22.Jak odczytać lub zaktualizować store Zustand poza komponentami React (np. w helperze API)?
  23. 23.Jak set w Zustand obsługuje zagnieżdżone obiekty?
  24. 24.Jak zwykle organizuje się duży store Zustand?
  25. 25.Dlaczego store z persist może spowodować hydration mismatch w aplikacjach SSR?
  26. 26.Czym staleTime różni się od gcTime?
  27. 27.Czym isPending różni się od isFetching?
  28. 28.Jak odświeżyć listę po tym, jak useMutation utworzył element?
  29. 29.Których zapytań dotyczy invalidateQueries({ queryKey: ['todos'] })?
  30. 30.Jak uruchomić zapytanie dopiero wtedy, gdy inne zwróci user.id?
  31. 31.Jak przy paginacji pokazywać poprzednią stronę, gdy ładuje się następna?
  32. 32.Co TanStack Query domyślnie robi z nieudanym zapytaniem?
  33. 33.Dlaczego każda zmienna używana przez queryFn musi być częścią queryKey?
  34. 34.Jak sprawić, by mutacja RTK Query ponownie pobrała listę postów?
  35. 35.Kiedy RTK Query usuwa nieużywane dane z cache?
  36. 36.Jak pominąć zapytanie RTK Query, dopóki argument nie jest dostępny?
  37. 37.Jak RTK Query unika zduplikowanych żądań, gdy 3 komponenty wywołują useGetUserQuery(1)?
  38. 38.Co robi opcja refetchOnMountOrArgChange w RTK Query?
  39. 39.Kiedy SWR domyślnie automatycznie rewaliduje dane?
  40. 40.Jak w SWR pobierać dane tylko po spełnieniu warunku?
  41. 41.Co robi mutate(key) z useSWRConfig?
  42. 42.Dlaczego dwa komponenty z tym samym kluczem SWR wykonują tylko jedno żądanie?
  43. 43.Jak ustawić domyślny fetcher i opcje dla wszystkich hooków SWR?
  44. 44.Jak komponent odczytuje dane zwrócone przez loader jego trasy?
  45. 45.Co się dzieje po zakończeniu action w React Router?
  46. 46.Jak pokazać stan oczekiwania podczas nawigacji lub wysyłania formularza w React Router?
  47. 47.Kiedy warto użyć useFetcher zamiast <Form>?
  48. 48.Jak przekierować z action po utworzeniu elementu?
  49. 49.Dane serwerowe są w TanStack Query. Co zwykle zostaje dla globalnego store'a klienta?
  50. 50.Jak RTK Query ma się do TanStack Query?
  51. 51.Do czego służy callback prepare w reducerze createSlice?
  52. 52.Jak obsłużyć stan pending wielu thunków jednym case'em w slice'ie?
  53. 53.Czy warto przechowywać cartTotal w stanie Reduxa obok items?
  54. 54.Jak pominąć thunk, jeśli dane są już załadowane lub się ładują?
  55. 55.Jak komponent może dostać wynik thunka lub złapać jego błąd?
  56. 56.Jak dodać endpointy RTK Query z leniwie ładowanej funkcji aplikacji?
  57. 57.Jak ponownie pobierać zapytanie RTK Query co 30 sekund, dopóki komponent jest zamontowany?
  58. 58.Jak sprawić, by komponent renderował się ponownie tylko przy zmianie jednego posta z buforowanej listy?
  59. 59.Co robi drugi argument true w set(newState, true) w Zustand?
  60. 60.Po co niektóre zespoły grupują akcje Zustand w zagnieżdżony obiekt actions?
  61. 61.Czym różni się initialData od placeholderData w TanStack Query?
  62. 62.Co daje helper queryOptions?
  63. 63.Jak odpytywać zapytanie co 10 sekund w TanStack Query?
  64. 64.Czym różni się mutateAsync od mutate?
  65. 65.Jak równolegle pobrać dynamiczną liczbę zapytań (np. po jednym na wybrane id)?
  66. 66.Jak sprawić, by otwarcie strony szczegółów było natychmiastowe?
  67. 67.Który hook SWR realizuje paginację „załaduj więcej”?
  68. 68.Jak rozpocząć żądanie SWR przed renderem komponentu (np. przy najechaniu)?
  69. 69.Co robi keepPreviousData: true w SWR przy zmianie klucza (np. nowego zapytania wyszukiwania)?
  70. 70.Co się dzieje, gdy loader w React Router rzuca błąd?
  71. 71.Czym jest clientLoader w framework mode React Router?
  72. 72.Po co aktualizować parametry wyszukiwania z { replace: true }, gdy użytkownik wpisuje filtr?
  73. 73.Czym różnią się aktualizacje optymistyczne od pesymistycznych?
  74. 74.Jak plakietka w nagłówku może pokazywać wszystkie oczekujące mutacje „dodaj do koszyka” z innych komponentów?
  75. 75.Jak wpiąć strumień cen z WebSocketa w bufor SWR?