关于 nx
面向构建和维护 Nx 工作区的团队,涵盖单体仓库及多语言项目。内容包括代码生成器、受影响项目任务、共享库和工作区配置。
主要功能
- 01按业务领域组织项目
- 02生成一致的工作区代码
- 03仅对受影响项目运行任务
- 04在项目间共享库
- 05配置任务依赖和设置
- 06支持多语言工作区
适用场景
- 01生成库和组件脚手架
- 02构建、测试或检查变更项目
- 03减少应用间的工具代码重复
- 04协调工作区中的任务顺序
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ oguzhan18/ angular-ecosystem-skills --skill nx安装后在 Claude Code 中输入/nx确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/discussions/_INDEX.mdreferences/docs/_INDEX.mdreferences/issues/_INDEX.mdreferences/releases/_INDEX.md详细介绍
Nx(智能、快速、可扩展的构建系统)
版本: 22.x(2025) 标签: Monorepo、构建系统、Angular、React、Node
参考资料: 文档 — 指南、教程 • GitHub • 企业模式书籍
API 变更
本节记录近期特定版本的 API 变更。
-
新增:TypeScript 项目引用 — 使用现代 TypeScript 配置加快构建和类型检查 来源
-
新增:pnpm catalog 支持 — 使用 pnpm catalogs 管理统一的版本策略 来源
-
新增:Angular Rspack 支持 — 适用于 Angular 项目的快速打包工具 来源
-
新增:AI Agent 集成 — 提供代码模式,更好地管理大模型上下文 来源
-
新增:多语言工作区 — 原生支持 Gradle、Maven、.NET,并可与 JS/TS 项目共存
最佳实践
- 使用基于领域的文件夹结构 — 按业务领域对项目分组
libs/
├── auth/
│ ├── feature-login/
│ └── data-access/
├── products/
│ ├── feature-list/
│ └── ui/
└── shared/
├── ui/
└── utils/
- 使用 Nx 生成器 — 在工作区中生成风格一致的代码
# Create new library
nx g @nx/angular:library --name=shared-data-access --directory=libs/shared/data-access
# Create new feature
nx g @nx/angular:component --name=user-profile --project=my-app
- 使用 affected 命令 — 仅对已更改的项目运行任务
nx affected:build # Build only changed projects
nx affected:test # Test only changed projects
nx affected:lint # Lint only changed projects
-
使用共享库 — 借助通用工具避免代码重复
-
配置任务依赖关系 — 在
project.json中定义任务之间的依赖关系
{
"build": {
"dependsOn": ["^build"]
}
}
-
使用 Nx Cloud — 启用分布式缓存,加快 CI
-
使用
nx.json和tsconfig.base.json— 在各项目中强制采用统一设置 -
使用
@nx/angular:component生成器 — 遵循工作区的组件规范
评论
支持 Markdown