Nx 功能介绍
Nx 是一个面向 Monorepo(单仓多项目)的智能构建系统 + 开发工具平台,最初为 JS/TS 生态设计,现在也支持 .NET、Java、Go、Python 等。核心目标就一句话:
别重复构建、别重复测试、别全量跑 CI——只跑“真正受影响”的那部分,而且跑过的结果直接复用。
一、Nx 到底是什么
不是包管理器(不替代 npm/pnpm/yarn),也不是框架(不替代 React/Angular/Next)。
它是坐在你现有工具链上面的一层:
- 包管理:npm / pnpm / yarn workspaces
- 构建工具:Vite / Webpack / tsc / Next / Angular CLI
- 测试工具:Jest / Vitest / Playwright
- Nx 负责:调度这些工具、算依赖、算缓存、算 affected、画依赖图
最小认知模型:
Nx = 项目依赖图 + 任务编排 + 计算缓存 + 代码生成
Nx 的命令体系其实很清晰,可以分成 项目级命令、批量命令、依赖/影响分析命令、代码生成命令 和 工程治理命令 五大类。下面按「你实际会用到」的方式整理,而不是按文档顺序罗列。
二、最常用:项目级命令(单项目)
1️⃣ nx run
执行某个项目的某个 target(最标准写法)
等价简写:
📌 所有 Nx 命令最终都会解析成
project:target2️⃣ nx build / test / lint / serve
内置常用 target 的快捷方式
二、核心命令:批量执行(你刚用的)
3️⃣ nx run-many
对 多个项目 执行同一个/多个 target
常用参数:
|
参数
|
含义
|
|---|---|
-t |
target
|
-p |
指定项目
|
--all |
所有项目
|
--affected |
受影响项目
|
--parallel |
并行执行
|
✅ CI / 大仓最常用的命令
4️⃣ nx affected
只跑 本次改动影响到的项目
常见搭配:
📌 底层依赖:
- git diff
- 项目依赖图
三、依赖 & 影响分析(Nx 最强能力)
5️⃣ nx graph
打开 可视化依赖图(强烈推荐)
用途:
- 看项目依赖关系
- 查循环依赖
- 理解为什么某个项目被 affected
也可以只看受影响项目:
6️⃣ nx show
查看项目信息(调试神器)
7️⃣ nx dep-graph(旧)
新版本已统一到nx graph
四、代码生成(Generator)
8️⃣ nx generate(或 nx g)
生成代码、项目、组件、模块
常用 generator:
|
场景
|
示例
|
|---|---|
|
新建 app
|
nx g @nx/react:app |
|
新建 lib
|
nx g @nx/workspace:lib |
|
新建组件
|
nx g @nx/react:component |
|
迁移工具
|
nx g @nx/web:static-config |
五、工程治理 & 维护
9️⃣ nx migrate
升级 Nx 和插件版本
流程:
🔟 nx format
代码格式化(prettier)
1️⃣1️⃣ nx reset
清空 Nx 缓存(排错第一招)
1️⃣2️⃣ nx report
输出环境信息(提 issue 必备)
六、缓存 & 性能相关(进阶)
1️⃣3️⃣ nx exec
直接执行命令(绕过 target)
1️⃣4️⃣ 缓存相关(隐式)
Nx 默认:
- 缓存
build / test / lint - 命中缓存直接跳过执行
查看缓存:
关闭缓存:
七、命令速查表(收藏级)
|
命令
|
用途
|
|---|---|
nx run |
执行指定 target
|
nx build / test / lint / serve |
快捷命令
|
nx run-many |
多项目批量执行
|
nx affected |
只跑受影响项目
|
nx graph |
依赖可视化
|
nx generate |
生成代码
|
nx migrate |
升级 Nx
|
nx reset |
清缓存
|
nx report |
环境信息
|
nx format |
格式化
|
八、一个典型日常流程
如果你愿意,下一步我可以帮你:

浙公网安备 33010602011771号