Angular 角度7-升级项目后出错

Angular 角度7-升级项目后出错,angular,typescript,Angular,Typescript,我有一个在Angular 6中创建的项目。我正在尝试将其升级到版本7。我已经阅读了许多文章,并且能够执行升级。但当我运行ng serve命令时,我得到以下信息: Angular Compiler中的错误要求TypeScript>=3.1.1并且似乎您正在使用Angular Compiler的旧版本将Angular Compiler更新为最新版本并进行检查 运行ng update这将更新您的package.json,然后 删除node_模块和npm缓存文件夹,然后运行npm安装 我最新的angul

我有一个在Angular 6中创建的项目。我正在尝试将其升级到版本7。我已经阅读了许多文章,并且能够执行升级。但当我运行ng serve命令时,我得到以下信息:


Angular Compiler中的错误要求TypeScript>=3.1.1并且似乎您正在使用Angular Compiler的旧版本将Angular Compiler更新为最新版本并进行检查

运行
ng update
这将更新您的package.json,然后 删除node_模块和npm缓存文件夹,然后运行
npm安装

我最新的angular编译器在package.json中显示了这一点

"@angular/compiler": "^7.2.15",
    "@angular/compiler-cli": "^7.2.15",
"typescript": "~3.1.6",

将package.json中的Typescript更新为3.1.6

"@angular/compiler": "^7.2.15",
    "@angular/compiler-cli": "^7.2.15",
"typescript": "~3.1.6",

我面临同样的错误,下面显示的命令解决了我的问题。也就是说,它安装所需的最新版本

npm install typescript@">=3.1.1 and <3.3.0"

npm安装类型脚本@“>=3.1.1,如果angular 7不支持TS 3.4.5,那么angular 6支持TS 3.4.5似乎有点奇怪,但如果你说的是真的,那么,将其降低到3.3.0,并替换任何需要3.4.5的库。当你降级到3.3.0时,你会在编译过程中看到错误。但如果angular破坏了向后兼容性,我会更惊讶。除非您使用的是不受支持的startI版本,否则将再次运行ng update和npm安装,但我的软件包上也会显示“@angular/compiler”:“^7.2.15”。我还有“@angular/compiler cli”:“^7.2.15”。此命令生成以下输出:npm WARN@angular/compiler-cli@7.2.15需要prev中typescript@>=3.1.1的对等方。注释命令是npm install“@angular/compiler”。如果我这样做,那么我会得到许多类似这样的错误:节点\模块/ts enum util/dist/types/index.d.ts中的错误(23101):错误TS2344:Type'keyof T'不满足约束“string”。类型“string | number | symbol”不可分配给类型“string”。类型“number”不可分配给类型“string”。node_modules/ts enum util/dist/types/index.d.ts(76,57):错误TS2344:类型“keyof T”不满足约束“string”。类型“string | number | symbol”不可分配给类型“string”。类型“number”不可分配给类型“string”,如果我这样做,那么我会得到许多类似以下的错误:节点\模块/ts enum util/dist/types/index.d.ts中的错误(23101):错误TS2344:类型“keyof T”不满足约束“string”。类型“string | number | symbol”不可分配给类型“string”。类型“number”不可分配给类型“string”。node_modules/ts enum util/dist/types/index.d.ts(76,57):错误TS2344:类型“keyof T”不满足约束“string”。类型“string | number | symbol”不可分配给类型“string”。类型“number”不可分配给类型“string”是的,Typescript 3.1+版本已进行严格的类型检查。您需要清理节点模块,清理
npm
缓存并重新安装
npm
依赖项。我这样做了:npm cache clean--force,然后安装npm。没有帮助。这意味着您需要更新
ts enum util
以与您的typescript版本兼容。ts enum util的版本是什么?