React · Senior · Pytanie 34 z 75
Dlaczego nie umieszcza się w store Redux promise'ów, instancji klas i funkcji?
- ✓Poprawna odpowiedź: Psuje to serializację, DevTools, zapis stanu i przewidywalność
- 2Redux fizycznie nie może przechowywać niczego poza stringami i liczbami
- 3Spowalnia to
useSelectordziesiątki razy z powodu głębokiego porównania
Wyjaśnienie
Store powinien być zwykłym serializowalnym drzewem: jest logowany, zapisywany (redux-persist), odtwarzany w time travel i przekazywany z serwera przy SSR. RTK ostrzega o nieserializowalnych wartościach w trybie deweloperskim. Nieserializowalne obiekty trzymaj poza store, a w nim przechowuj ich identyfikatory.