Angular: 升级Angular 14到Angular 15

N个月前写过一篇Angular: 升级Angular 13到Angular 14 的文章。现在Angular已经发布到了V16(非GA版本),那是时候把Angular项目升级到Angular 15了。

因为有了之前的经验,这次相对来说比较轻松一点:
步骤一:官方升级文档一定要阅读:官方链接
这个文档虽然不一定有具体价值,但是如果有非常严重的问题,文档一定会表明的。比如Angular 9的升级中引入Ivy模式。

步骤二: 创建一条NPM script在package.json文件中:

 "scripts": {
    "ng": "ng",
    
    "upgrade15": "ng update @angular/core@15 @angular/cli@15 @angular/material@15 @angular-eslint/schematics@15"
  },

有了这个Script,就无需每个人都要记住那些command了。只需要执行命令:

npm run upgrade15

执行此命令之前,记得把git的change先提交(包括创建这条script的修改)。

将来升级Angular 16的时候,可以通过同样的方法。注意,我这里的项目使用了@angular/material,所以升级时制定了Material的库的升级。如果是别的库,比如蚂蚁的Ng-Antg,则将UI库进行替换即可。

步骤三,上述项目中,Material的库的更新还需要一个额外步骤。
详情参阅Material MDC Migration的官方文档

ng generate @angular/material:mdc-migration

执行上述指令或者创建一条新的script在运行都可以。
这条migration指令提供了交互式的选项,根据本身项目的特点进行选择。

步骤四,这也是前作中没有提及但及其重要的:要执行下测试指令。

ng test

在新的版本上对原代码进行编译和测试,有助于升级后的问题发现和解决。

依照上述步骤,已经将本地的所有Angular项目升级到了15。

遇到的数个问题:

执行ng test遇到如下错误:
Angular: 升级Angular 14到Angular 15_第1张图片
解决方案:重新安装node的types。

npm i -D @types/node@latest

你可能感兴趣的:(Web,Programming,前端,javascript,angular)