angular - 为什么 nrwl/nx 比 angular@6 vanilia 更好?
问题描述
og 的最大优势nrwl/nx
是在一个项目中实现多个工作区。现在angular 6
也支持它。nx
over angular@6的其他优点是什么?
解决方案
nx 很棒,我使用它是因为我们在一个大项目中有 5 个 Angular 应用程序,而且我认为 nrwl/nx 是为复杂的企业应用程序而设计的,所以如果你有一个由许多前端应用程序组成的大项目,它将会很有用,但即使对于一个会给您带来许多优势的应用程序,这里也是 nx 的一些好处:
- 您将为共享相同 package.json 的所有应用程序拥有一个 monorepo,因此您必须为所有应用程序管理一次包
- 更高的一致性和生产力
- 您可以创建可以在您的应用程序之间共享的库,这将节省您的时间,并且团队说最好将所有逻辑代码放在库中,即使它们不在应用程序之间共享
- 如果我们将其与标准 cli 进行比较,则代码生成的更多选项
- 您将拥有出色的路由和状态管理 (ngrx) 实施(实施正确的)
- 构建时间改进:使用 nx,您将避免重新执行不必要的构建,因此如果您对 lib 进行一些更改,nx 将确保只有依赖它的应用程序才能构建。
- nx 的未来是拥有一个强大的 mono repo 工具和一个出色的构建系统(一个 nx 的Bazel版本),并且可以让您的项目为 CI 做好准备
使用一个命令,您可以构建或测试受您的更改影响的应用程序
yarn affected:build --all --prod
yarn affected:test --all --prod
现在可以生成多种类型的前端应用程序ANGULAR , REACT // 用于生成反应应用程序 ng add @nrwl/react # 将 React 功能添加到您的工作区 ng g @nrwl/react:application reactAppName
// for generating an angular app ng add @nrwl/angular ng g @nrwl/angular:application angularAppName
为您的前端应用程序(如Nest )生成后端应用程序,并以灵活的方式在前端和后端应用程序之间创建共享库
ng add @nrwl/nest ng g @nrwl/nest:app api --frontendProject=YOU_FRONTEND_PROJECT // link the generate nest app to a specific frontend app
推荐阅读
- arrays - 合并数组中的重复长
- java - Neo4j 数据一致性问题
- node.js - ng start - 未知选项:'--inspect-brk'
- c++ - 检查 const char* 作为非类型模板参数
- java - java基于用户搜索的动态where子句
- html - 如何在 CSS 中使用负填充
- flutter - 标题在flexibleSpaceBar上没有正确显示
- python - python中的多处理-完成后进程未关闭
- ruby-on-rails - 合并所需参数时出现 url_helper 错误
- git - 错误:BG-JIB 拒绝 [some-git-repo].git 的权限