# @concord-consortium/mobx-state-tree 中文文档

规范地址：https://npmcn.com/package/%40concord-consortium/mobx-state-tree/

版本：6\.0\.0-cc\.1
npm 元数据更新时间：2025-12-03T22:25:36.477Z
中文译文更新时间：2026-11-10T16:21:57.982Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40concord-consortium/mobx-state-tree
原文对照：https://npmcn.com/package/%40concord-consortium/mobx-state-tree/?lang=original
项目主页：https://github.com/concord-consortium/mobx-state-tree#readme
源码仓库：https://github.com/concord-consortium/mobx-state-tree

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：1.3 MB，48 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：0 个
- peer 依赖：mobx ^6\.3\.0
- 首次发布：2022-08-25T14:38:26.797Z
- 最新版本发布：2024-05-28T21:32:25.034Z
- 近 30 天下载量：2761（2026-10-11 至 2026-11-09，npm 官方下载统计）
- 已发布版本数：5（近 12 个月 0 个）

## 中文简介

透视、交易、 MobX 电源状态容器

## 安装

```sh
npm install @concord-consortium/mobx-state-tree
```

也可以使用：`pnpm add @concord-consortium/mobx-state-tree`、`yarn add @concord-consortium/mobx-state-tree`、`bun add @concord-consortium/mobx-state-tree`

## README

![logo](https://npmcn.com/package/%40concord-consortium/mobx-state-tree/website/static/img/mobx-state-tree-logo-gradient.png)

# 黑道-州-树木

[![npm version](https://badge.fury.io/js/mobx-state-tree.svg)](https://badge.fury.io/js/mobx-state-tree) [![CircleCI](https://circleci.com/gh/mobxjs/mobx-state-tree.svg?style=svg)](https://circleci.com/gh/mobxjs/mobx-state-tree) [![Have a question? Ask on GitHub Discussions!](https://img.shields.io/badge/Have%20a%20question%3F-Ask%20on%20GitHub%20Discussions!-blue)](https://github.com/mobxjs/mobx-state-tree/discussions)

## 什么是黑帮国家树?

从技术上讲,暴徒州立树(又名:MST)是一个州立集装箱系统,其基础是: [移动X](https://github.com/mobxjs/mobx)功能反应状态库.

这对你来说可能没什么意义, 我将这样解释: **MobX是一个州管理"引擎",而MobX-State-Tree给了它一些你应用所需的结构和通用工具.** MST在大型团队中很有价值,但当您期望您的代码能快速缩放时,在更小的应用中也会有用. 如果我们把它比作Redux, MST 提供更好的性能,并且比Redux少得多的锅炉板代码!

移动X是 [最受欢迎的Redux替代品之一](https://2019.stateofjs.com/data-layer/mobx/) 并被世界各地的公司(连同MobX-State-Tree)使用。 MST 与 TypeScript, React, 和 React Industrial 玩得非常好, 特别是配对时 [暴徒- 反应- 立特](https://github.com/mobxjs/mobx/tree/main/packages/mobx-react-lite)它支持多个商店、同步动作和副作用,使得极具针对性地重新发布React apps, 以及更多 -- -- 所有软件包中都有 _零依赖关系_ 除了MobX本身.

_注:您不需要知道如何使用MobX来使用MST._

# 开始

见 [开始](https://mobx-state-tree.js.org/intro/getting-started) 教程或跟随空闲 [蛋头.io课程](https://egghead.io/courses/manage-application-state-with-mobx-state-tree)。 。 。 .

官方文件可在 [http://mobx-state-tree.js.org/ 互联网档案馆的存檔,存档日期2013-12-22](http://mobx-state-tree.js.org/)

## 快速代码示例

没有什么比看一些代码更像 去感受图书馆。 看看作者的这个小例子和作者的微博列表.

```js
import { types } from "mobx-state-tree" // alternatively: import { t } from "mobx-state-tree"

// Define a couple models
const Author = types.model({
  id: types.identifier,
  firstName: types.string,
  lastName: types.string
})
const Tweet = types.model({
  id: types.identifier,
  author: types.reference(Author), // stores just the `id` reference!
  body: types.string,
  timestamp: types.number
})

// Define a store just like a model
const RootStore = types.model({
  authors: types.array(Author),
  tweets: types.array(Tweet)
})

// Instantiate a couple model instances
const jamon = Author.create({
  id: "jamon",
  firstName: "Jamon",
  lastName: "Holmgren"
})

const tweet = Tweet.create({
  id: "1",
  author: jamon.id, // just the ID needed here
  body: "Hello world!",
  timestamp: Date.now()
})

// Now instantiate the store!
const rootStore = RootStore.create({
  authors: [jamon],
  tweets: [tweet]
})

// Ready to use in a React component, if that's your target.
import { observer } from "mobx-react-lite"
const MyComponent = observer((props) => {
  return <div>Hello, {rootStore.authors[0].firstName}!</div>
})

// Note: since this component is "observed", any changes to rootStore.authors[0].firstName
// will result in a re-render! If you're not using React, you can also "listen" to changes
// using `onSnapshot`: https://mobx-state-tree.js.org/concepts/snapshots
```

## 谢谢!

-   [米歇尔·威斯特斯特拉特](https://twitter.com/mweststrate) 用于创建 MobX, MobX-State-Tree,以及 MobX-React.
-   [无限红](https://infinite.red/) 用于支持MST的持续维护.
-   [门迪克](https://mendix.com/) 赞助和提供诸如MST等探索性项目的工作机会.
-   [丹·阿布拉莫夫](https://twitter.com/dan_abramov)工作进展 [复数](http://redux.js.org/) 强烈影响了MST中快照和交易行动的想法.
-   [朱利奥·坎蒂](https://twitter.com/GiulioCanti)工作进展 [连接](http://github.com/gcanti/tcomb) 和一般类型系统对MST的类型系统产生了强烈的影响.
-   所有早期的领养者都鼓励追求这一整体想法,并证明这是可行的.

## 常见问题

### @concord-consortium/mobx-state-tree 是什么？

透视、交易、 MobX 电源状态容器

### 如何安装 @concord-consortium/mobx-state-tree？

在项目目录运行 npm install @concord-consortium/mobx-state-tree，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：mobx（^6\.3\.0）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @concord-consortium/mobx-state-tree 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @concord-consortium/mobx-state-tree 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @concord-consortium/mobx-state-tree 可以商用吗？

@concord-consortium/mobx-state-tree 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @concord-consortium/mobx-state-tree 的下载量有多少？

根据 npm 官方下载统计，@concord-consortium/mobx-state-tree 在 2026/10/11 – 2026/11/09 这 30 天内被下载 2,761 次，日均约 92 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @concord-consortium/mobx-state-tree 还在维护吗？

最新版本 6\.0\.0-cc\.1 发布于 2024/05/29（2 年前）；至今共发布 5 个版本，其中过去 12 个月发布了 0 个；首次发布于 2022/08/25。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

