Skip to content

Commit bf1f46c

Browse files
committed
doc: 更新中文文档
1 parent 9a4dae4 commit bf1f46c

File tree

13 files changed

+6631
-1505
lines changed

13 files changed

+6631
-1505
lines changed

doc/README.md

Lines changed: 82 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,86 @@
1-
# mockm
1+
# MockM - 前后端开发神器 🚀
2+
23
<p align="center">
3-
<a href="https://www.npmjs.com/package/mockm"><img src="https://img.shields.io/npm/dt/mockm" alt="Downloads"></a>
4-
<a href="https://www.npmjs.com/package/mockm"><img src="https://img.shields.io/npm/v/mockm.svg" alt="Version"></a>
5-
<a href="https://www.npmjs.com/package/mockm"><img src="https://img.shields.io/npm/l/mockm.svg" alt="License"></a>
6-
<p>
4+
<a href="https://www.npmjs.com/package/mockm"><img src="https://img.shields.io/npm/dt/mockm?style=flat-square&color=blue" alt="Downloads"></a>
5+
<a href="https://www.npmjs.com/package/mockm"><img src="https://img.shields.io/npm/v/mockm?style=flat-square&color=green" alt="Version"></a>
6+
<a href="https://www.npmjs.com/package/mockm"><img src="https://img.shields.io/npm/l/mockm?style=flat-square&color=orange" alt="License"></a>
7+
<a href="https://github.com/wll8/mockm/stargazers"><img src="https://img.shields.io/github/stars/wll8/mockm?style=social" alt="Stars"></a>
8+
</p>
79

810
<p align="center">
9-
<a href="https://wll8.github.io/mockm/use/try.html">尝试</a>
11+
<a href="https://wll8.github.io/mockm/use/try.html">🚀 快速开始</a>
12+
<span>&nbsp;|&nbsp;</span>
13+
<a href="https://wll8.github.io/mockm/use/example.html">💡 使用示例</a>
1014
<span>&nbsp;|&nbsp;</span>
11-
<a href="https://wll8.github.io/mockm/use/example.html">示例</a>
12-
<p>
13-
14-
集模拟和调试功能于一身. 自动生成数据和增删查改一系列接口, 支持文件上传下载, 延迟, 自定义接口逻辑...
15-
16-
## 特性
17-
- 支持 0 侵入, 无需修改项目中的任何代码即可投入使用
18-
- 快速生成接口和数据, 以及文档
19-
- 支持 Restful API
20-
- 以最方便的形式支持 api 拦截, 注入, 请求及响应修改
21-
- 修改实时生效
22-
- 支持自动允许跨域
23-
- 自动带参调试, 无需登录
24-
- 自动根据接口查找文档和调试地址, 标识字段描述
25-
- 请求记录, 重放
26-
- 当提供接口的后端服务出现问题, 也可最大程度还原接口响应
27-
- 参数预校验, 助你分析接口联调的问题所在
28-
- 无需数据库支持
29-
- 根据接口生成业务代码
30-
- 跨平台, 支持 linux macos windows
31-
- 支持远程调试, 一个属性完成内网穿透
32-
33-
## 友情推荐
34-
35-
| 项目 | 简介 |
36-
| ------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------- |
37-
| [taroify](https://github.com/mallfoundry/taroify) | Taroify 是移动端组件库 Vant 的 Taro 版本,两者基于相同的视觉规范,提供一致的 API 接口,助力开发者快速搭建小程序应用。 |
38-
| [wot-design-uni](https://github.com/Moonofweisheng/wot-design-uni) | 一个基于Vue3+TS开发的uni-app组件库,提供70+高质量组件,支持暗黑模式、国际化和自定义主题。 |
15+
<a href="https://wll8.github.io/mockm/config/option.html">📖 配置文档</a>
16+
</p>
17+
18+
> **一行命令,秒变 API 服务器** - 集模拟、代理、调试于一体的前后端协作利器
19+
20+
## ✨ 核心优势
21+
22+
🎯 **零配置启动** - 2 行命令即可拥有完整 API 服务器
23+
🔄 **智能代理** - 一键解决跨域问题,无需修改任何代码
24+
📊 **数据生成** - 内置 MockJS,生成逼真测试数据
25+
🎭 **RESTful API** - 自动生成 CRUD 接口,支持搜索分页
26+
🌐 **远程调试** - 内置内网穿透,随时分享调试链接
27+
📱 **可视化管理** - Web UI 界面,人性化操作
28+
**热更新** - 配置修改实时生效,开发体验流畅
29+
30+
## 🚀 30 秒上手
31+
32+
```bash
33+
# 安装
34+
npm i -g mockm
35+
36+
# 启动(自动创建示例配置)
37+
mm --config
38+
```
39+
40+
**立即体验**
41+
- 🌐 API 服务:http://127.0.0.1:9000/api/1
42+
- 📊 管理界面:http://127.0.0.1:9005
43+
- 🔧 配置文件:查看生成的 `mm.config.js`
44+
45+
## 🎯 典型应用
46+
47+
### 前端开发者
48+
- **跨域代理** - 一行配置解决开发环境跨域
49+
- **Mock 数据** - 无需等待后端,立即开始开发
50+
- **接口调试** - 可视化界面,完整请求历史
51+
52+
### 后端开发者
53+
- **API 文档** - 自动生成,前端易于对接
54+
- **参数分享** - 一键生成调试链接,告别截图
55+
- **接口测试** - 内置测试工具,支持各种场景
56+
57+
### 团队协作
58+
- **远程调试** - 内网穿透,随时分享给同事
59+
- **版本管理** - 配置文件化,Git 友好
60+
- **环境切换** - 灵活的多环境配置
61+
62+
## 📚 文档导航
63+
64+
### 📖 新手指南
65+
- [🚀 快速开始](https://wll8.github.io/mockm/use/try.html) - 5 分钟上手指南
66+
- [💡 使用示例](https://wll8.github.io/mockm/use/example.html) - 常见场景解决方案
67+
- [🌐 Web 界面](https://wll8.github.io/mockm/use/webui.html) - 可视化操作指南
68+
69+
### 🔧 进阶配置
70+
- [📋 配置选项](https://wll8.github.io/mockm/config/option.html) - 完整配置参考
71+
- [⚙️ 命令行参数](https://wll8.github.io/mockm/config/cli.html) - CLI 使用说明
72+
- [📁 文件结构](https://wll8.github.io/mockm/use/outfile.html) - 数据文件说明
73+
74+
### 🛠️ 开发相关
75+
- [🧪 测试用例](https://wll8.github.io/mockm/case/) - 功能演示
76+
- [🏗️ 开发文档](https://wll8.github.io/mockm/dev/) - 贡献指南
77+
78+
79+
## 🌟 友情链接
80+
81+
| 项目 | 简介 |
82+
|------|------|
83+
| [🎨 Taroify](https://github.com/mallfoundry/taroify) | 移动端组件库 Vant 的 Taro 版本,助力小程序开发 |
84+
| [🎯 wot-design-uni](https://github.com/Moonofweisheng/wot-design-uni) | 基于 Vue3+TS 的 uni-app 组件库,70+ 高质量组件 |
85+
86+
如果你有项目需要在此页面上展示,请告诉我。

doc/config/cli.md

Lines changed: 111 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -1,69 +1,133 @@
1-
# 命令行参数
2-
## 从命令行传入配置项
3-
某些情况下, 通过命令行传入可能更简便, 支持 [配置选项](../config/option.md) 中的以下值类型:
4-
- string
5-
- boolean
6-
- number
7-
8-
示例:
9-
``` sh
10-
mm proxy=https://httpbin.org/
1+
# 命令行参数 ⚡
2+
3+
MockM 支持通过命令行快速配置,让你无需创建配置文件即可启动服务。
4+
5+
## 🎯 快速配置
6+
7+
### 基本语法
8+
```bash
9+
mm [配置项]=[值]
1110
```
1211

13-
上面的参数对应的选项是 [config.proxy](../config/option.md#config-proxy):
12+
支持的值类型:`string``boolean``number`
13+
14+
### 常用示例
15+
```bash
16+
# 启动代理服务
17+
mm proxy=https://api.example.com
1418

15-
与下列配置文件的效果是一样的:
19+
# 指定端口
20+
mm port=8080
1621

17-
``` js
18-
module.exports = {
19-
proxy: `https://httpbin.org/`,
20-
}
22+
# 启用进程守护
23+
mm guard=true
24+
25+
# 组合配置
26+
mm proxy=https://api.example.com port=8080 guard=true
2127
```
2228

23-
当命令行参数与文件配置冲突时, 命令行参数优先.
29+
**优先级**:命令行参数 > 配置文件 > 默认值
30+
31+
## 🛠️ 专用参数
32+
33+
以下参数仅能在命令行使用:
2434

25-
## 仅有命令行可用的参数
26-
以下参数仅可以在命令行上使用, 写在配置文件中是无效的:
27-
### --cwd
28-
设置程序的工作目录, 默认为当前运行命令的目录, 支持相对路径和绝对路径.
35+
### `--config` 配置文件
36+
指定配置文件路径,支持自动创建。
2937

30-
### --template
31-
生成常用 mockm 配置, 此操作在运行目录下做了以下几件事:
32-
- 在 package.json 中添加命令 `"mm": "npx mockm --cwd=mm"` 和自身版本的开发依赖
33-
- 创建名为 mm 的目录并在其中放置 mockm 配置文件
38+
```bash
39+
# 使用指定配置文件
40+
mm --config=my-config.js
41+
42+
# 自动生成示例配置(推荐新手)
43+
mm --config
44+
45+
# 生成到指定路径
46+
mm --config=test/mm.config.js
47+
```
48+
49+
### `--template` 项目模板
50+
在当前目录生成 MockM 项目模板。
51+
52+
```bash
53+
mm --template
54+
```
3455

35-
推荐将 mockm 安装到项目中, 之后应使用 `npm run mm` 来启动 mockm.
56+
**生成内容**
57+
- 📝 `package.json` 中添加 MockM 依赖和脚本
58+
- 📁 创建 `mm/` 目录和配置文件
59+
- 🚀 之后使用 `npm run mm` 启动
3660

37-
注: 不会覆盖已存在的配置和文件.
61+
### `--cwd` 工作目录
62+
设置程序运行的工作目录。
3863

39-
### --config
40-
指定配置文件地址.
64+
```bash
65+
# 使用相对路径
66+
mm --cwd=./mock
4167

42-
例如传入 `--config=test/mm.config.js` 则表示使用 test 目录下的 mm.config.js 文件作为配置, 若不存在则从示例配置自动创建.
68+
# 使用绝对路径
69+
mm --cwd=/path/to/mock
70+
```
4371

44-
当命令行上仅传入 `--config``--config=true` 值时, 如果当前目录不存在配置文件, 则会自动生成一份较为完整的, 然后按自己的需求修改即可.
72+
### 其他实用参数
4573

46-
### --no-update
47-
禁用更新检查.
74+
| 参数 | 说明 | 示例 |
75+
|------|------|------|
76+
| `--version` | 显示版本号并退出 | `mm --version` |
77+
| `--no-update` | 禁用自动更新检查 | `mm --no-update` |
78+
| `--log-line` | 显示日志所在行号 | `mm --log-line` |
79+
| `--node-options` | 传递 Node.js 参数 | `mm --node-options="--inspect"` |
4880

49-
### --log-line
50-
显示 console.log 所在的行.
81+
## 🌍 环境变量
5182

52-
### --version
53-
仅查看版本号, 然后退出程序, 不启动服务.
83+
### `MOCKM_REGISTRY`
84+
指定按需安装依赖时的镜像地址。
5485

55-
### --node-options
56-
指定 node 的运行参数, 例如 `--node-options="--inspect-brk"` 可以进入调试模式.
86+
```bash
87+
# 使用国内镜像
88+
export MOCKM_REGISTRY=https://registry.npmmirror.com/
89+
mm --config
90+
```
5791

58-
## 环境变量
59-
### MOCKM_REGISTRY
60-
MOCKM_REGISTRY 可以指定按需安装依赖时的镜像地址, 默认跟随当前 npm 配置, 不存在时使用 https://registry.npmmirror.com/.
92+
**默认行为**
93+
1. 优先使用 `MOCKM_REGISTRY` 环境变量
94+
2. 其次使用当前 npm 配置的镜像
95+
3. 最后使用 `https://registry.npmmirror.com/`
6196

62-
::: details 为什么不使用默认的 NPM_CONFIG_REGISTRY?
63-
- 1 假设你通过修改了 npm 的默认镜像地址, 例如 `nrm use taobao`,
64-
- 2 你没有指定 NPM_CONFIG_REGISTRY 环境变量,
65-
- 3 package.json 中有以下 scripts `"dev": "mockm"`,
66-
- 4 当你运行 `yarn dev` 时, yarn 会自动把 NPM_CONFIG_REGISTRY 值设置为 `https://registry.yarnpkg.com/`, 这与第 2 步冲突了.
97+
::: tip 为什么不直接使用 NPM_CONFIG_REGISTRY?
98+
避免与包管理器冲突。例如运行 `yarn dev` 时,yarn 会自动设置 `NPM_CONFIG_REGISTRY=https://registry.yarnpkg.com/`,可能导致安装失败。
6799
:::
68100

101+
## 💡 实用技巧
102+
103+
### 快速启动常用配置
104+
```bash
105+
# 创建别名(Linux/macOS)
106+
alias mmp="mm proxy=https://api.example.com port=8080"
107+
108+
# Windows PowerShell
109+
function mmp { mm proxy=https://api.example.com port=8080 }
110+
```
111+
112+
### 调试模式
113+
```bash
114+
# Node.js 调试模式
115+
mm --node-options="--inspect-brk" --config
116+
117+
# 显示详细日志
118+
mm --log-line --config
119+
```
120+
121+
### 多环境配置
122+
```bash
123+
# 开发环境
124+
mm --config=dev.config.js
125+
126+
# 测试环境
127+
mm --config=test.config.js
128+
129+
# 生产环境(代理)
130+
mm --config=prod.config.js
131+
```
132+
69133

0 commit comments

Comments
 (0)