Nx.dev 到底是什么?

All*_*lla 6 nrwl-nx

Nx到底是什么?我正在为一个工作项目推销 Nx 设置,因为我看到了它的巨大价值,但我无法向我的同事解释什么是 Nx。他们问:如果我们将 Nx 添加到我们的 Angular 项目中,它会做什么?有人可以帮我简单地回答这个问题吗?

der*_*ani 5

正如该网站所述,

“Nx 是一套用于 monorepos 的可扩展开发工具,它可以帮助您像 Google、Facebook 和 Microsoft 一样进行开发。”

换句话说,它是一组帮助程序,使在 monorepo 中开发应用程序和库更容易设置、维护和使用。

它提供了一种固执己见(并且在我看来设计良好)的方式来构建您的单一存储库。它附带了一些漂亮的原理图,可以轻松构建新的应用程序、库、模块、组件等。

对我来说最重要的特点是

  • 内置支持许多您可能想要使用的优秀库,例如用于状态管理的 NgRx、用于测试的 Jest 和 Cypress、Prettier 等。
  • 原理图
  • 预定义的 npm 脚本
  • 能够轻松自动地构建依赖关系图(至少当您使用 Angular 时)。参见Nx 维基
  • 能够使用 Nest.js 在单一存储库中包含前端和后端代码(非常适合 Angular Universal 应用程序),请参阅Nestjs/ng-universal

这是我个人最大的优点,当我试图说服客户选择 Nrwl Nx 时,我会提到这一点。

至于你的同事的问题“它会做什么?”

它将为您提供一套用于构建应用程序和库的扩展工具,以及如何构建 monorepo 的指南。尽管如此,您和团队仍必须就如何构建和组织项目的具体细节达成一致。最重要的是——坚持下去;)