# @corey\.burrows/statechart 中文文档

规范地址：https://npmcn.com/package/%40corey.burrows/statechart/

版本：0\.3\.0
npm 元数据更新时间：2024-04-01T13:57:28.258Z
中文译文更新时间：2026-11-10T22:00:43.703Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40corey.burrows/statechart
原文对照：https://npmcn.com/package/%40corey.burrows/statechart/?lang=original
项目主页：https://github.com/burrows/statechart
源码仓库：https://github.com/burrows/statechart

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

- 包体积（解压后）：71.1 kB，21 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：0 个
- 首次发布：2022-03-09T17:09:28.358Z
- 最新版本发布：2024-04-01T13:57:28.089Z
- 近 30 天下载量：2825（2026-10-11 至 2026-11-09，npm 官方下载统计）
- 已发布版本数：6（近 12 个月 0 个）

## 中文简介

简单的无国籍状态图

## 安装

```sh
npm install @corey.burrows/statechart
```

也可以使用：`pnpm add @corey.burrows/statechart`、`yarn add @corey.burrows/statechart`、`bun add @corey.burrows/statechart`

## README

![Statechart](https://cdn.rawgit.com/burrows/statechart/90b94a845e1d7bed6707576a0cf4c1bb1baad1b6/logo.svg)

# 国图

`Statechart` 是用于构建的 TypeScript 库 [Harel 状态图](https://en.wikipedia.org/wiki/State_diagram#Harel_statechart)。 。 。 .

## 安装

```
npm install @corey.burrows/statechart
```

## 基本用途

```typescript
import Statechart from '@corey.burrows/statechart';

type Ctx {}
type Evt = {type: 'toggle'};

const toggle = new Statechart<Ctx, Evt>({}, s => {
  s.state('on', s => {
    s.on('toggle', '../off');
  });

  s.state('off', s => {
    s.on('toggle', '../on');
  });
});

let state = toggle.initialState;
console.log(state.paths); // ['/on']
state = toggle.send(state, {type: 'toggle'});
console.log(state.paths); // ['/off']
state = toggle.send(state, {type: 'toggle'});
console.log(state.paths); // ['/on']
```

## 文档

-   [概览](https://npmcn.com/package/%40corey.burrows/statechart/OVERVIEW.md)
-   [API 文档](https://npmcn.com/package/%40corey.burrows/statechart/docs/README.md)
-   [国家图纸](http://www.wisdom.weizmann.ac.il/~harel/papers/Statecharts.pdf)
-   [历史论文](http://www.wisdom.weizmann.ac.il/~harel/papers/Statecharts.History.pdf)

## 相关项目

-   [状态图](https://github.com/burrows/react-use-statechart)
    -   使用状态图管理 React 组件的状态

## 许可证

国图是 [麻省理工学院执照](https://npmcn.com/package/%40corey.burrows/statechart/LICENSE)。 。 。 .

## 常见问题

### @corey\.burrows/statechart 是什么？

简单的无国籍状态图

### 如何安装 @corey\.burrows/statechart？

在项目目录运行 npm install @corey\.burrows/statechart，或使用 pnpm add / yarn add / bun add。

### @corey\.burrows/statechart 支持 TypeScript 吗？

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

### @corey\.burrows/statechart 支持 ESM 还是 CommonJS？

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

### @corey\.burrows/statechart 可以商用吗？

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

### @corey\.burrows/statechart 的下载量有多少？

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

### @corey\.burrows/statechart 还在维护吗？

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

