CLI
mokup 提供 build 与 serve 两个命令。
Build
生成供服务端适配器与 Worker 使用的 .mokup 构建产物。
使用场景:
- 为 Worker 或服务端运行时生成 bundle。
- 在 CI/CD 中预构建 mock 产物。
示例:
bash
pnpm exec mokup build --dir mock --out .mokupbash
npm exec mokup build --dir mock --out .mokupbash
yarn mokup build --dir mock --out .mokupbash
bunx mokup build --dir mock --out .mokupBuild 选项
| 参数 | 说明 |
|---|---|
--dir, -d | mock 目录(可重复) |
--out, -o | 输出目录(默认 .mokup) |
--prefix | 路由前缀 |
--include | 仅包含匹配的正则(可重复) |
--exclude | 排除匹配的正则(可重复) |
--ignore-prefix | 忽略路径段前缀(可重复) |
--no-handlers | 不生成函数处理器 |
Serve
从目录直接启动独立的 mock 服务。
使用场景:
- 不依赖前端应用,快速起一个 mock API 服务。
- 用于本地联调或接口测试。
示例:
bash
pnpm exec mokup serve --dir mock --prefix /api --port 3000bash
npm exec mokup serve --dir mock --prefix /api --port 3000bash
yarn mokup serve --dir mock --prefix /api --port 3000bash
bunx mokup serve --dir mock --prefix /api --port 3000Serve 选项
| 参数 | 说明 |
|---|---|
--dir, -d | mock 目录(可重复) |
--prefix | 路由前缀 |
--include | 仅包含匹配的正则(可重复) |
--exclude | 排除匹配的正则(可重复) |
--ignore-prefix | 忽略路径段前缀(可重复) |
--host | 主机名(默认 localhost) |
--port | 端口(默认 8080) |
--no-watch | 关闭文件监听 |
--no-playground | 关闭 Playground |
--no-log | 关闭日志输出 |
API
如果更喜欢编程式用法,可直接调用 buildManifest:
使用场景:
- 在 Node 脚本或构建管线中生成 manifest。
- 集成到自定义工具链。
示例:
ts
import { buildManifest } from 'mokup/cli'
await buildManifest({
dir: 'mock',
outDir: '.mokup',
})Bundle helper(跨平台)
生成 bundle 模块源码字符串,不依赖文件系统:
使用场景:
- 在无文件系统的环境中生成 bundle 源码。
- 自定义模块 import 路径输出。
示例:
ts
import type { RouteTable } from 'mokup/bundle'
import { buildBundleModule } from 'mokup/bundle'
const routes: RouteTable = []
const source = buildBundleModule({
routes,
root: '/project',
resolveModulePath: file => `/virtual/${file}`,
})routes 的结构与 scanRoutes(来自 mokup/vite)的返回值一致。若不在 Vite 环境内构建,请用 resolveModulePath 控制输出的 import 路径。
说明
--dir可多次传入,但会在同一份 manifest 中合并。- 生成的
mokup.bundle.mjs适合在 Worker 或 Node 运行时直接导入。 mokup serve与内置服务直启行为一致。