Repolode
mobxjs

mobxjs/mobx

Простое и масштабируемое управление состоянием в приложениях на JavaScript и TypeScript с автоматическим отслеживанием зависимостей и оптимальным обновлением интерфейса.

Звёзды
28,218
Форки
1,810
Открытые issues
18
Последний коммит
вчера

Что это?

MobX — библиотека для управления состоянием в JavaScript и TypeScript. Достаточно пометить данные как observable и изменять их обычными присваиваниями: во время выполнения MobX отслеживает, какие вычисления и компоненты интерфейса читают каждое значение, и повторно запускает только те из них, на которые повлияло изменение.

Состояние можно описывать обычными классами или объектами с помощью makeAutoObservable, а производные значения автоматически вычисляются на основе observable-состояния. Компоненты, обёрнутые в observer, например React-компоненты через mobx-react-lite, перерисовываются только при обновлении конкретных полей, которые они используют. Поэтому ручная мемоизация и селекторы, как правило, не нужны.

MobX не привязан к конкретному UI-фреймворку, поэтому логику состояния можно держать вне компонентов и тестировать отдельно. Документация проекта размещена на mobx.js.org.

Ключевые возможности

  • 01Автоматически отслеживает во время выполнения, к какому состоянию обращается каждое вычисление или компонент.
  • 02Позволяет менять состояние обычными присваиваниями JavaScript, в том числе в асинхронном коде.
  • 03Автоматически вычисляет производные значения на основе observable-состояния без ручной настройки связей.
  • 04Перерисовывает React-компоненты через observer только при изменении используемых ими полей.
  • 05Не зависит от UI-фреймворка, поэтому состояние можно тестировать изолированно.

Сценарии использования

  • Управление общим состоянием приложения во фронтенде на React с минимумом шаблонного кода.
  • Создание состояния интерфейса, которое должно точно обновляться при изменении конкретных полей.
  • Размещение бизнес-логики в обычных классах, не зависящих от слоя представления и удобных для модульного тестирования.

Быстрый старт

  1. 1

    Прочитать документацию на mobx.js.org

  2. 2

    Установить пакет mobx из npm

    npm install mobx

В подборках

Темы

Частые вопросы

Что такое mobx?
Простое и масштабируемое управление состоянием в приложениях на JavaScript и TypeScript с автоматическим отслеживанием зависимостей и оптимальным обновлением интерфейса. MobX — библиотека для управления состоянием в JavaScript и TypeScript. Достаточно пометить данные как observable и изменять их обычными присваиваниями: во время выполнения MobX отслеживает, какие вычисления и компоненты интерфейса читают каждое значение, и повторно запускает только те из них, на которые повлияло изменение.
mobx можно использовать бесплатно? Какая у него лицензия?
mobx распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
mobx всё ещё поддерживается?
Активно поддерживается. Последний коммит в mobx — 6 нояб. 2026 г..
Для чего можно использовать mobx?
Управление общим состоянием приложения во фронтенде на React с минимумом шаблонного кода. Создание состояния интерфейса, которое должно точно обновляться при изменении конкретных полей. Размещение бизнес-логики в обычных классах, не зависящих от слоя представления и удобных для модульного тестирования.
Как установить mobx?
Прочитать документацию на mobx.js.org Установить пакет mobx из npm: npm install mobx
Где скачать mobx?
Исходный код и инструкции по установке — на GitHub: https://github.com/mobxjs/mobx

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Библиотека JavaScript для обновления неизменяемого состояния через мутацию черновой копии текущего состояния.

29 тыс.+3 за неделю906JavaScriptMITАктивно поддерживаетсяОбновлён 7 дней назад