Zarządzanie stanem · Middle · Pytanie 7 z 75
Komponent używa tylko theme z dużego AppContext, ale renderuje się przy każdej zmianie koszyka. Co pomoże?
- ✓Poprawna odpowiedź: Podzielić kontekst na mniejsze według domeny i częstotliwości zmian
- 2Owinąć komponent w
React.memo- blokuje aktualizacje kontekstu - 3Czytać kontekst przez
useRefzamiastuseContext
Wyjaśnienie
React.memo nie zatrzymuje renderów spowodowanych kontekstem, który czyta komponent. Osobne ThemeContext i CartContext ograniczają aktualizacje do właściwych konsumentów. Przy bardzo częstych aktualizacjach - store z selektorami.