取决于最近的工作空间是否与最初的情况一样简单。大多数情况下,您可以使用多个应用程序、比较的图书馆、考虑各种主要版本的基础知识和各种主要版本来实现、实用、改进 — 可以体验装备。
接下来,我将与 Angular 12 和 17 的相关信息进行比较,以了解有关 Nx 的原则、决策和计划。
更新指南 考虑到内部战略的可能性,我们的动机包括:
与最近的框架兼容的书目; Aproveitar novos recursos introduzidos em versões maiscentes(独立组件、信号、无编译器的melhorias等); 保障和管理,以及终止的依赖; 构建、测试和执行应用程序的性能。 初始策略 最初的 abordagem foi seguir o caminho “官方”推荐 pelas ferramentas:
Atualizar uma 主要版本 por vez (12 ➜ 13 ➜ 14 ➜ ... ➜ 17); 利用Nx 的兼容性,验证 Nx 与 Angular的兼容性nx migrate;nx migrate --run-migrations 利用Angular 的特性来识别重大更改和必要的调整; 确保构建较接近版本的应用程序。 遵循兼容性和最佳原则,或实现以下功能:
Angular 13 nx migrate 14.1.9 Verifique seu package.jsoneo arquivo migrations.jsongerado。后期,将其作为 migrações com 进行:
nx migrate --run-migrations --create-commits Angular 14 和 Angular 15 迁移主要版本后,请执行nx migrate 15.2.0此操作,并在@nrwl/angularAngular 15.0.0 版本中作为迁移所需的包。决定解决这个问题时,我们将推荐主要的版本。
nx migrate 15.2.0 Verifique seu package.jsoneo arquivo migrations.jsongerado。后期,将其作为 migrações com 进行:
nx migrate --run-migrations --create-commits Angular Material 15 我对 Angular Material 15 的迁移提出了一些批评,以定义调色板、主题和主题的形式。不过,您还可以更改基于 MDC 的组件。这是实现升级的关键。
Angular 16、17 和 Mudança de Planos 但是,如果您执行nx migrate任何操作,都会遇到一系列不同的错误。 Além disso, meu prazo estava se aproximando do fim。您可能会遇到这样的问题:无法配置 Nx 中的算法或依赖于 Nx 的算法。
无论节奏如何,我们都可以对超级评论进行评论。在Angular 的设计中,第 16 章和第 17 章发生了重大变化,我们将在项目中进行有意义的设计。
重要时刻,决定如何规划规划并继续使用手册和方向:
新的工作空间 Nx 使用 17.3.0 版,可以直观地验证与工作空间相关的不同之处; 更改手册中存在的差异; 忽略第 16 章,que traria pouco valor isoladamente; Atualizar o Angular eo Nx ditamente para a versão 17; 放弃nx migrate,实现依赖手动调整或调整project.json。tsconfig 在此期间,我们将减少总体节奏并允许任何相关的重大更改,但最终不会制定。
完成升级 最终的结果包括内部和外部图书馆的兼容性,验证构建应用程序并纠正错误。
结论 Migrar do Angular 12 para o 17 em um monorepo Nx não é apenas trocar versões no package.json.涉及的过程:
Conhecer as mudanças entre cada versão; 调整内部和外部图书馆;www.xzsgwhzx.cn/category-11… 托马尔·博阿斯 (Tomar Boas) 决定通过一系列行动来解决卡米尼奥的问题。 我们将进行迁移,研究重大变化,验证 Nx/Angular 的兼容性,并立即对激光雷达进行调整 — 无需任何保证。