use*_*835 10 typescript angular
我在执行npm run build时遇到以下错误:
Angular编译器需要TypeScript> = 3.4.0和<3.5.0,但是找到了3.5.3。
我已经尝试过分别进行以下操作:
npm install typescript @“> = 3.4.0 <3.5.0”。然后删除node_modules和package.json。运行npm install
npm更新--force。然后删除node_modules和package.json。运行npm install
我仍然收到错误:
我的package.json包含以下依赖项:
"dependencies": {
"@angular/animations": "8.1.0",
"@angular/cdk": "^8.0.2",
"@angular/cli": "^8.1.0",
"@angular/common": "8.1.0",
"@angular/compiler": "8.1.0",
"@angular/core": "8.1.0",
"@angular/forms": "8.1.0",
"@angular/http": "7.2.15",
"@angular/material": "^8.0.2",
"@angular/platform-browser": "8.1.0",
"@angular/platform-browser-dynamic": "8.1.0",
"@angular/router": "8.1.0",
"@ngx-translate/core": "^11.0.1",
"@ngx-translate/http-loader": "^4.0.0",
"angular-user-idle": "^2.1.2",
"angular2-cookie": "^1.2.6",
"core-js": "^2.6.7",
"rxjs": "6.5.2",
"rxjs-tslint": "^0.1.5",
"stream": "0.0.2",
},
"devDependencies": {
"@angular-devkit/build-angular": "^0.801.0",
"@angular/compiler-cli": "8.1.0",
"@angular/language-service": "8.1.0",
"@types/jasmine": "~3.3.13",
"@types/jasminewd2": "~2.0.6",
"@types/node": "~12.6.1",
"jasmine-core": "~3.4.0",
"jasmine-spec-reporter": "~4.2.1",
"protractor": "~5.4.2",
"ts-node": "~8.3.0",
"tslint": "~5.18.0",
"typescript": "^3.4.5"
}
Run Code Online (Sandbox Code Playgroud)
ng --version提供以下输出:
Angular CLI: 8.1.2
Node: 10.16.0
OS: win32 x64
Angular: 8.1.0
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router
Package Version
-----------------------------------------------------------
@angular-devkit/architect 0.801.2
@angular-devkit/build-angular 0.801.2
@angular-devkit/build-optimizer 0.801.2
@angular-devkit/build-webpack 0.801.2
@angular-devkit/core 8.1.2
@angular-devkit/schematics 8.1.2
@angular/cdk 8.1.1
@angular/cli 8.1.2
@angular/http 7.2.15
@angular/material 8.1.1
@ngtools/webpack 8.1.2
@schematics/angular 8.1.2
@schematics/update 0.801.2
rxjs 6.5.2
typescript 3.5.3
webpack 4.35.2
Run Code Online (Sandbox Code Playgroud)
这里可能出什么问题了?
wen*_*jun 21
Original Answer - Applicable for Angular 8
It seems like you have the latest version (v3.5.3) of TypeScript installed. You should be installing TypeScript v3.4.5 instead, which is the version that is supported by Angular 8.
You can try this command to install the specific version of TypeScript, rather than the latest version.
npm i --save-dev typescript@3.4.5
Run Code Online (Sandbox Code Playgroud)
另外,您可能要考虑删除^
package.json上TypeScript版本的插入记号,以使其仅为3.4.5。这是为了防止它安装/使用最新的次要版本(3.5.3)。
"typescript": "3.4.5"
Run Code Online (Sandbox Code Playgroud)
已编辑-适用于正在使用其他Angular版本(例如Angular 9或Angular 2至7)的用户)
|-----------------|--------------------|
| Angular version | TypeScript version |
|-----------------|--------------------|
| 6.1.x | 3.6.x |
|-----------------|--------------------|
| 7.2.x | 2.9.x |
|-----------------|--------------------|
| 9.x | 3.6.x |
|-----------------|--------------------|
Run Code Online (Sandbox Code Playgroud)
同样,如果我们使用任何其他Angular版本,则可以安装相应的TypeScript版本。
npm i --save-dev typescript@3.6.4
Run Code Online (Sandbox Code Playgroud)
来源 -请参阅版本的完整列表。
小智 17
运行此脚本以查找确切版本
npm install typescript@">=3.4.0 and <3.5.0" --save-dev
Run Code Online (Sandbox Code Playgroud)
Sib*_*enu 10
我也遇到了这个问题Angular 9
,但版本号不同。
Angular Compiler 中的 ERROR 需要 TypeScript >=3.6.4 和 <3.8.0,但找到了 3.8.2。
我所做的是,
typescript
版本发现只支持3.7typescript
版本编辑package.json
为"typescript": "~3.7.0"
npm i
的~
,因为这将确保它会只更新到下一个补丁版本(<这里是重要的3.8.0
),而不是次要的版本,如果你使用^
它都将更新为次要版本太(例如4.0.0
)。
您有两个选择:
这将安装正确的版本
npm install typescript@">=3.4.0 and <3.5.0" --save-dev
Run Code Online (Sandbox Code Playgroud)
转到package.json
并更改您的typescript
版本,如果您想将您的 angular 项目升级到
角 11 ( npm install typescript@"~4.0.0" --save-dev
)
"devDependencies": {
...
"typescript": "~4.0.0"
}
Run Code Online (Sandbox Code Playgroud)
角 10 ( npm install typescript@"~3.8.0" --save-dev
)
"devDependencies": {
...
"typescript": "~3.8.0"
}
Run Code Online (Sandbox Code Playgroud)
角 9 ( npm install typescript@"~3.7.0" --save-dev
)
"devDependencies": {
...
"typescript": "~3.7.0"
}
Run Code Online (Sandbox Code Playgroud)
角 8 ( npm install typescript@"~3.4.0" --save-dev
)
"devDependencies": {
...
"typescript": "~3.4.0"
}
Run Code Online (Sandbox Code Playgroud)
角 7 ( npm install typescript@"~3.1.0" --save-dev
)
"devDependencies": {
...
"typescript": "~3.1.0"
}
Run Code Online (Sandbox Code Playgroud)
然后运行:
npm install
Run Code Online (Sandbox Code Playgroud)
请使用以下命令卸载打字稿:
npm uninstall typescript
Run Code Online (Sandbox Code Playgroud)
然后安装打字稿特定的版本:
npm i --save-dev typescript@3.4.5
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8380 次 |
最近记录: |