如何将 Angular ssr 项目从 16 正确地更新为 17?
我可以直接
npm install -g @angular/cli@17
还是必须卸载以前的版本?
在应用程序的项目目录中运行
ng update @angular/core@17 @angular/cli@17
将应用程序更新到 Angular v17。
在 Angular CLI 和应用程序更新到 v17 后,我可以只运行
npm install
这将更新 package.json 中的所有 dependencies
和 devDependencies
列表吗?还是我必须手动更新它们npm install @angular/{animations,common,compiler,compiler-cli,core,forms,router,etc..}@'^17' [email protected] zone@'^0.14'
在开始第 3 点之前删除我的 node_modules 目录和 package-lock.json 文件?
更新其他依赖项
npm update
?
Angular CLI: 17.0.8
Node: 20.9.0
Package Manager: npm 10.1.0
OS: linux x64
Angular: 16.2.8
... animations, common, compiler, compiler-cli, core, forms
... localize, platform-browser, platform-browser-dynamic
... platform-server, router
Package Version
---------------------------------------------------------
@angular-devkit/architect 0.1602.6
@angular-devkit/build-angular 16.2.6
@angular-devkit/core 16.2.5
@angular-devkit/schematics 16.2.5
@angular/cdk 16.2.7
@angular/fire 7.6.1
@angular/material 16.2.7
@schematics/angular 16.2.5
rxjs 7.8.1
typescript 5.1.6
zone.js 0.13.3
您可以使用全局选项将@angular/cli更新到第17版,而无需卸载之前的版本。 然后,在您的项目中,将依赖项更新为 Angular 17。依赖项与其他依赖项无关,因此更新一个依赖项不会更新另一个依赖项。 删除 node_modules 和 lockfile 不是必需的,但如果您愿意,您无论如何都可以这样做。
最后,为了帮助更新依赖项,我建议使用 Dependabot 或 Renovate 之类的工具来帮助增量管理更新,并遵循 Angular 迁移指南:https://update.angular.io/?v=16.0-17.0 .