Ответ
MobX — это библиотека для управления состоянием в приложениях, основанная на реактивном программировании. Она автоматически отслеживает изменения данных и обновляет компоненты, которые их используют.
Ключевые концепции:
- Observable — помечает данные, за изменениями которых нужно следить.
- Action — функции, изменяющие состояние.
- Computed — производные значения, которые пересчитываются автоматически при изменении зависимостей.
- Reaction (например,
autorun
) — побочные эффекты, выполняемые при изменении состояния.
Пример:
import { observable, action, computed, makeAutoObservable } from 'mobx';
class CounterStore {
count = 0;
constructor() {
makeAutoObservable(this);
}
increment = () => this.count++;
decrement = () => this.count--;
get doubleCount() {
return this.count * 2;
}
}
const store = new CounterStore();
Плюсы:
- Минимальный boilerplate
- Высокая производительность
- Простота интеграции с React (через
mobx-react-lite
)