我正在努力将 Angular 版本从 12 升级到 16。
如果我没有使用
--force
命令指定 ng update
,则角度迁移会因缺少对等依赖项错误而失败。
我执行了
ng update @angular/core@13 @angular/cli@13 --force
命令将应用程序从 12 迁移到 16。
将
--force
与 ng
命令一起使用是一个好习惯吗?
成功迁移后,我需要在服务器上部署更改。
我还需要在服务器上执行
--force
。这是一个好的做法吗?
如果这不是一个好的做法,那么我们需要有关 Angular 迁移失败问题解决方案的帮助。
我执行了以下命令,顺利完成了 Angular 版本迁移。
仅当您知道它只是对仍与 Angular 更新版本兼容的旧包的对等依赖警告时,才应使用
--force
选项。
即使以这种方式升级软件包后,在使用
npm install
时仍然可能会遇到对等依赖错误。在这种情况下,您需要在项目的根目录中添加一个 .npmrc
文件,其中包含 legacy-peer-deps=true
标志。这绕过了对等依赖错误。
https://docs.npmjs.com/cli/v7/using-npm/config#legacy-peer-deps
最终,您仍然需要验证您所依赖的软件包是否适用于您要升级到的最新版本的 Angular。始终建议一次升级一个专业。