Ответ
- Context API: Встроен в React, позволяет передавать данные без пропсов. Используется для глобального состояния.
const MyContext = React.createContext();
<MyContext.Provider value={data}>
<ChildComponent />
</MyContext.Provider>
-
MobX: Библиотека для управления состоянием с реактивными данными. Проще в настройке, чем Redux.
-
Zustand: Минималистичный стейт-менеджер. Не требует оберток, удобен для небольших приложений.
const useStore = create(set => ({
count: 0,
increment: () => set(state => ({ count: state.count + 1 })),
}));
-
Recoil: Разработан Facebook. Работает с атомами и селекторами, подходит для сложных состояний.
-
Props Drilling: Прямая передача через пропсы. Подходит для простых случаев, но не масштабируется.
-
Event Bus / PubSub: Паттерн для передачи событий между компонентами. Например, через
window.dispatchEvent. -
URL (React Router): Хранение состояния в URL (query-параметры). Полезно для фильтров или настроек.