Angular 编译器中的错误要求 TypeScript >=3.6.4 和 <3.8.0,但找到了 3.8.2
ERROR in The Angular Compiler requires TypeScript >=3.6.4 and <3.8.0 but 3.8.2 was found instead
我运行
ng version
并得到以下输出:
Angular CLI: 9.0.3
Node: 12.16.1
OS: win32 x64
Angular: 9.0.2
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router
Ivy Workspace: Yes
Package Version
-----------------------------------------------------------
@angular-devkit/architect 0.803.25
@angular-devkit/build-angular 0.803.25
@angular-devkit/build-optimizer 0.803.25
@angular-devkit/build-webpack 0.803.25
@angular-devkit/core 8.3.25
@angular-devkit/schematics 9.0.3
@angular/cdk 8.2.3
@angular/cli 9.0.3
@angular/material 8.2.3
@ngtools/webpack 8.3.25
@schematics/angular 9.0.3
@schematics/update 0.900.3
rxjs 6.5.4
typescript 3.8.2
webpack 4.39.2
如果我尝试将类型脚本设置得较低,它会抱怨项目是 Angular 9 并且不能使用该类型的类型脚本。不知道该怎么做,欢迎任何帮助,谢谢。
这意味着 Angular 还不支持 TypeScript 3。8.x。
您可以使用
中的 angularCompilerOptions.disableTypeScriptVersionCheck: true
选项绕过此错误
tsconfig.json
"angularCompilerOptions": {
...
"disableTypeScriptVersionCheck": true,
},
另请参阅:
使用设置了ng更新命令的版本:npm install typescript@3.7.5
我遇到了同样的问题。我注意到我的 package-lock.json 有打字稿:3.8.3。所以我 npm i typescript@3.7.5
构建了我的应用程序,它运行良好。
如果您收到一条错误消息,指出 Angular 编译器需要 TypeScript >=3.4.0 和 <3.5.0 但找到了 x.x.x,请执行以下步骤:
- 运行
npm i --save-dev-exact typescript@3.4.5
- 重新启动
ng serve
以在 localhost:4200 为项目提供服务。
最初 Package.json 有 "typescript": "^3.7.5" 和 Package-lock.json 有 3.9.10 .
我通过在 Package.json 中给出确切版本作为 "typescript": "3.7.5" 和 运行 npm install 来解决。 package-lock.json 使用给定版本生成的打字稿 属性。
我运行
ng version
并得到以下输出:
Angular CLI: 9.0.3
Node: 12.16.1
OS: win32 x64
Angular: 9.0.2
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router
Ivy Workspace: Yes
Package Version
-----------------------------------------------------------
@angular-devkit/architect 0.803.25
@angular-devkit/build-angular 0.803.25
@angular-devkit/build-optimizer 0.803.25
@angular-devkit/build-webpack 0.803.25
@angular-devkit/core 8.3.25
@angular-devkit/schematics 9.0.3
@angular/cdk 8.2.3
@angular/cli 9.0.3
@angular/material 8.2.3
@ngtools/webpack 8.3.25
@schematics/angular 9.0.3
@schematics/update 0.900.3
rxjs 6.5.4
typescript 3.8.2
webpack 4.39.2
如果我尝试将类型脚本设置得较低,它会抱怨项目是 Angular 9 并且不能使用该类型的类型脚本。不知道该怎么做,欢迎任何帮助,谢谢。
这意味着 Angular 还不支持 TypeScript 3。8.x。
您可以使用
中的angularCompilerOptions.disableTypeScriptVersionCheck: true
选项绕过此错误
tsconfig.json
"angularCompilerOptions": {
...
"disableTypeScriptVersionCheck": true,
},
另请参阅:
使用设置了ng更新命令的版本:npm install typescript@3.7.5
我遇到了同样的问题。我注意到我的 package-lock.json 有打字稿:3.8.3。所以我 npm i typescript@3.7.5
构建了我的应用程序,它运行良好。
如果您收到一条错误消息,指出 Angular 编译器需要 TypeScript >=3.4.0 和 <3.5.0 但找到了 x.x.x,请执行以下步骤:
- 运行
npm i --save-dev-exact typescript@3.4.5
- 重新启动
ng serve
以在 localhost:4200 为项目提供服务。
最初 Package.json 有 "typescript": "^3.7.5" 和 Package-lock.json 有 3.9.10 .
我通过在 Package.json 中给出确切版本作为 "typescript": "3.7.5" 和 运行 npm install 来解决。 package-lock.json 使用给定版本生成的打字稿 属性。