# @blitzjs/generator 中文文档

规范地址：https://npmcn.com/package/%40blitzjs/generator/

版本：3\.0\.2
npm 元数据更新时间：2025-09-11T13:04:05.287Z
中文译文更新时间：2026-11-08T06:58:16.095Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：541 kB，195 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：27 个
- 首次发布：2020-05-04T15:12:40.341Z
- 最新版本发布：2025-09-11T13:04:05.026Z
- 近 30 天下载量：72759（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：497（近 12 个月 0 个）

## 中文简介

[![Blitz.js](https://raw.githubusercontent.com/blitz-js/art/master/github-cover-photo.png)](https://blitzjs.com/)

## 安装

```sh
npm install @blitzjs/generator
```

也可以使用：`pnpm add @blitzjs/generator`、`yarn add @blitzjs/generator`、`bun add @blitzjs/generator`

## README

[![Blitz.js](https://raw.githubusercontent.com/blitz-js/art/master/github-cover-photo.png)](https://blitzjs.com/)

 [![](https://img.shields.io/badge/Join%20our%20community-6700EB.svg?style=for-the-badge&labelColor=000000&logoWidth=20&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAQ9SURBVHgB7d3dVdtAEIbhcSpICUoH0IEogQqSVBBSAU4FSSpIOoAORAfQgSghHXzZ1U/YcMD4R9rZmf2ec3y448LyiNf27iLiGIAmPLrweC9Un3DhrzG6EarLNP09nlwJ1SOZ/lQr5N80/S/p2QMVCBf5N17XCfm1Y/rBHqjAG9PPHvBsz+mf9WAP+HLA9M/YA14cOP2payH7jpj+VCtk1wnTP+vj7xCy6cTpn7EHLMLp059iD1iD8eveJbVCNsSLheX1YA/YgOWnf8YeKB3Wmf7Ud6Fy4f/FHmtpxbl3YlC4MJ/Cj0bWdwPnPbARg+L0S54XQHS32WwuxClzd4CM0z9rPfeAuTtA5ulPXYQ7wZ04Y+oOoDD9KZc9YOoOoDj9s4dwFzgXR6w1wIPoOvPWA9buAHEJ173o3gWiy3AnuBUHLEbgmYwvAk1/wuM8vAgexThzbwPDkx7/DHwVXfFOxP2GmsKd4Ab6zPeAyU8CI7AHFmH2BRCBPXAyk18GzUrqAXCTiR4ssyj0VFw/oCU8+e+RZ33AWz6KMaYbIIWxB+JSLs1bsbkeMN0AqakHvoku9oA2sAfqBvbAQdw0QArsgb25aYBUQT3QgT2gB+yBuqGcHij2UCqXDZACe2Anlw2QYg/QAOyBuoE98CL3DZDCuK4/rh/Q7oGL6U+TOvcNkJoijN8X1C48+T+g75eQDrAH/qmqAVJgDwyqaoAUe4AGYA/UDZX3QLUNkEIZPRCd5+6BahsgVUgPROwBTSijB7jpVAvGHriHvmw9wAZ4BpX1ABvgmakHtPcbRuwBTWAPULgAV9D/jKDY9YRvwvgEaurD44uQHvAol7qBW7WKluVtIHiUS7GyvA0s6CiXDnxrpQfsgbqBS7GKk/2jYHCrVlGyfxTMrVo0ALdq1Q3sgSKofh0M9oA61a+D2QM0AHugbmAPqClmSRjK2apVVQ8UsySsoK1aHdgDesCtWnUDeyCrIpeFg1u3sylyWTi3btMA7IG6gT2wuuK3hoE9sKrit4YVslWLPaAN7IG6ocKt2zmY2h4O9sDiTG0PZw/QANy6XTewBxZj9ogYVHy025LMHhEz9cBn0We6B0yfERReBLfhx0/R1YQHPx/QBPbA0VwcEwf2wNFcHBPHHjiem3MC2QPHcXdSaJjA+KfgTPQ8hhfjBzHC40mhlzJ+Xq9lK4a4PCs43AVaGTed5mZq+iOXZwWHi3AnOj2wFWNcnxYe7gTxLtBKHuamP/J+Wnh8a5irB7ZC5Yk9gPX1QuXC+usHWqGyhYvUYR0a7zboUOFCNVhnk0krZAOW7wFOvzXhom2xnEbIHizTA1wEYhWW6YFGyC6c1gOcfg9wfA80Qj7g8B7g9HuCww+haIR8wf49wOn3Cvv9k8tGyC/s7gFOv3fY3QONkH+v9MBWqB7PeqDn9FcIT//kcitUn6kHOu/T/xfWzlQy3dEHhwAAAABJRU5ErkJggg==)](https://discord.blitzjs.com/)[![](https://img.shields.io/badge/all_contributors-403-17BB8A.svg?style=for-the-badge&labelColor=000000)](https://npmcn.com/package/%40blitzjs/generator/#readme-contributors-) [![](https://img.shields.io/npm/l/blitz.svg?style=for-the-badge&labelColor=000000&color=blue) ](https://github.com/blitz-js/blitz/blob/main/LICENSE)[![](https://img.shields.io/npm/v/blitz.svg?style=for-the-badge&labelColor=000000&color=E65528)](https://www.npmjs.com/package/blitz)

  

# 缺少的 Fulstack 工具箱

# Blitz 发电机

## `Generator`

这个软件包存放了所有与 Blitz 代码相关的文件 。 总的来说 `src` 查找目录 `generator` 类和目录 `generators` 那样会延长时间 子类并不非常有趣,大部分的乐趣发生在抽象的家长类. 每个生成器可能(取决于它是净新添加文件还是修改已存在的文件)有一个相应的模板,定义在 `templates` 目录.

创建新生成器需要新建 `Generator` 子类 `src/generators`,并有可能在 `templates` 如果生成器生成净新文件。 对于模板,我们使用自己的诱导语言。 模板中的每个变量,周围有 `__` (例如:. `__modelName__`)将替换为返回对象中的相应值 `Generator::getTemplateValues`。这种替换也用文件名进行.

生成器框架也支持有条件的代码生成,类似于其他常见的调温语言如手提棒. 所有模型变量都通过 `process.env` 并可用于有条件的声明。 生成器不会在条件中评价任何表达式,所以该条件必须在生成器类中评价,并作为变量传递到模板. 两者 `if else` 和三重语句得到支持,以及 `if` 语句无 `else` 需要:

```js
// VALID
if (process.env.someCondition) {
  console.log("condition was true")
}

// VALID
if (process.env.someCondition) {
  console.log("condition was true")
} else {
  console.log("condition was false")
}

// VALID
const action = process.env.someCondition
  ? () => console.log("condition was true")
  : () => console.log("condition was false")

// **NOT** VALID
// This will compile fine, but will not product the expected results.
// The template argument `someValue` will be evaluated for truthiness
// and the conditional will be evaluated based on that, regardless of
// the rest of the expression
if (process.env.someValue === "some test") {
  console.log("dynamic condition")
}
```

## 常见问题

### 如何安装 @blitzjs/generator？

在项目目录运行 npm install @blitzjs/generator，或使用 pnpm add / yarn add / bun add。

### @blitzjs/generator 支持 TypeScript 吗？

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

### @blitzjs/generator 支持 ESM 还是 CommonJS？

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

### @blitzjs/generator 可以商用吗？

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

### @blitzjs/generator 的下载量有多少？

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

### @blitzjs/generator 还在维护吗？

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

