Локальный UI — useState/useReducer; кросс-экранный лёгкий — Context; сложный домен — Redux Toolkit/Zustand/Jotai с селекторами.
Разбор
- Context без мемоизации → лишние render.
- Не тащите всё в глобальный store.
- Серверный кэш: React Query/TanStack Query.
- Соглашение команды важнее библиотеки.
Итог
Выбор state-слоя зависит от области данных; серверный кэш отделяют от UI-store.