Angular 角度编译器需要TypeScript>=3.4.0和<;3.5.0但找到了3.5.3
在执行npm运行生成时,我遇到以下错误: Angular编译器要求TypeScript>=3.4.0,并适用于Angular 11 对于在Angular 11(11.2.x)的最新版本上运行的项目,它最多支持TypeScript v4.1.5Angular 角度编译器需要TypeScript>=3.4.0和<;3.5.0但找到了3.5.3,angular,typescript,Angular,Typescript,在执行npm运行生成时,我遇到以下错误: Angular编译器要求TypeScript>=3.4.0,并适用于Angular 11 对于在Angular 11(11.2.x)的最新版本上运行的项目,它最多支持TypeScript v4.1.5 npm i -D typescript@4.1.5 适用于角度10(截至2020年6月) 对于使用Angular 10的用户,请注意必须安装TypeScript 3.9,正如维护人员所做的那样。最安全的方法是安装最新版本的TypeScript npm i
npm i -D typescript@4.1.5
适用于角度10(截至2020年6月)
对于使用Angular 10的用户,请注意必须安装TypeScript 3.9,正如维护人员所做的那样。最安全的方法是安装最新版本的TypeScript
npm i -D typescript@3.9.5
适用于角度9(截至2020年5月)
对于运行在Angular 9最新版本(v9.1.x)上的项目,它最多支持TypeScript v3.8.3。如果您使用的是比该版本更新的版本(如TypeScript v3.9.0),则应将其降级并安装支持的版本:
npm i -D typescript@3.8.3
对于在Angular 9早期版本(v9.0.x)上运行的项目,支持的TypeScript版本为TypeScript v3.6.5至v3.7.5(包括)。安装任何其他不受支持的版本(如3.8.3)将导致类似以下错误:
ERROR in The Angular Compiler requires TypeScript >=3.6.4 and <3.8.0 but 3.8.3 was found instead
或者,您可以简单地将Angular更新到最新的次要版本(v9.1.x),因为这不应该包含任何中断性的更改
适用于角度8(原始答案) 您似乎安装了最新版本(v3.5.3)的TypeScript。您应该改为安装TypeScript v3.4.5,这是Angular 8支持的版本 您可以尝试使用此命令安装TypeScript的特定版本,而不是最新版本
npm i -D typescript@3.4.5
此外,您还可以考虑更改包上的Type脚本版本的插入符号<代码> ^ <代码>。JSON:
- 完全删除它意味着它将阻止npm安装/使用最新的次要版本(3.5.3) “类型脚本”:“3.4.5”
- 将其更改为“~”将告诉npm任何补丁发布都是可以接受的 “typescript”:“~3.4.5”//将使用与3.4.X匹配的最新版本
适用于那些正在使用旧的Angular版本(如Angular 2到7)的用户 同样,如果我们使用任何其他Angular版本,您可以安装相应的TypeScript版本
npm i -D typescript@3.6.4
-请参阅每个角度版本支持的TypeScript版本的完整列表
其他有用信息 实际上,有一种方法可以安装项目中安装的Angular版本“不支持”的TypeScript版本,正如所指出的。这样做的一个好处是允许您在项目上安装最新版本的TypeScript(如
TypeScript 4.1.2
或任何测试版)
在tsconfig.json
上,只需将disableTypeScriptVersionCheck
设置为true
{
// ...
"angularCompilerOptions": {
// ...
"disableTypeScriptVersionCheck": true
}
}
但是,请注意,以下人员不建议这样做:
不建议使用,因为不支持的TypeScript版本可能会
未定义的行为
请使用以下命令卸载typescript:
npm uninstall typescript
然后安装特定于typescript的版本:
npm i --save-dev typescript@3.4.5
此问题主要取决于@angular/cli版本 所以类型脚本取决于角度版本 更新时,请检查此网站(DevDependence) 做 npm i—保存开发typescript@3.4.5 3.4.5需要版本运行以下程序:
npm i --save-dev typescript@~3.4.5
您的错误是“^”“typescript”:“^3.4.0”
在您的package.json中
解决方案是
“typescript”:“~3.4.0”
运行此脚本以找到准确的版本
npm install typescript@">=3.4.0 and <3.5.0" --save-dev
npm安装typescript@“>=3.4.0和好消息
如果升级到Angular 8.2+,可以使用TypeScript 3.5。8.1版还不支持它
证明:您不需要卸载并再次安装typescript,这样就可以按照错误中的建议安装特定版本的typescript
npm install typescript@ version
或者你可以跑
npm install typescript@ version --save-dev
为了将其保存在json包中,我在Angular 9中也遇到了这个问题,但版本号不同
角度编译器中的错误要求TypeScript>=3.6.4,并且您有两个选项:
1-自动:
这将安装正确的版本
npm install typescript@">=3.4.0 and <3.5.0" --save-dev
Angular 10(npm安装类型脚本@“~3.8.0”--保存开发人员
)
Angular 9(npm安装类型脚本@“~3.7.0”--保存开发人员
)
Angular 8(npm安装typescript@“~3.4.0”--保存开发人员
)
Angular 7(npm安装类型脚本@“~3.1.0”--保存开发人员
)
然后运行:
npm install
使用这个命令对我来说很有用谢谢
npm i typescript@">=3.6.4 <3.8.0"
npm i typescript@“>=3.6.4而不是“typescript”:“^3.4.5”
在devDependencies
下,在package.json
文件中输入“typescript”:“~3.4.5”
并保存文件,然后再次运行npm install。它对我很有用。使用角度11
npm i -D typescript@4.0.5
如果要将angular项目升级到angular 11
npm install typescript@">=4.0.0 and <4.2.0" --save-dev
在我的例子中,当从角度10迁移到角度11时,我收到了这个错误
An unhandled exception occurred: The Angular Compiler requires TypeScript >=4.0.0 and <4.2.0 but 4. 2.3 was found instead.
发生未处理的异常:Angular编译器要求TypeScript>=4.0.0和当我遇到类似错误时,我运行:
yarn clean cache
如果您使用npm,您可以尝试运行:
npm clean cache
我不确定这是一个100%的解决方案,但我希望它能帮助某些人。我必须删除节点模块并重新安装npm吗?嗯。。您可以尝试第一步,即运行npmi--save devtypescript@3.4.5
,然后查看它是否解决了问题。如果不起作用,可以尝试第二种方法删除插入符号^
。根据您的建议,我认为您可以通过删除整个文件夹或运行rm-r node_modules
,然后重新安装来删除node_模块
"devDependencies": {
...
"typescript": "~3.4.0"
}
"devDependencies": {
...
"typescript": "~3.1.0"
}
npm install
npm i typescript@">=3.6.4 <3.8.0"
npm i -D typescript@4.0.5
npm install typescript@">=4.0.0 and <4.2.0" --save-dev
"devDependencies": {
...
"typescript": "^4.1.5"
}
An unhandled exception occurred: The Angular Compiler requires TypeScript >=4.0.0 and <4.2.0 but 4. 2.3 was found instead.
npm install typescript@'>==4.0.0 <4.2.0'
yarn clean cache
npm clean cache