首页 > 解决方案 > 运行 npm install 时出现 rxjs 版本错误

问题描述

我正在开发一个新的 Angular 应用程序。我使用 Angular CLI 创建了它ng new.

当我尝试使用 npm start 启动该应用程序时,出现以下错误:

ERROR in node_modules/rxjs/internal/types.d.ts(81,44): error TS1005: ';' expected.
node_modules/rxjs/internal/types.d.ts(81,74): error TS1005: ';' expected.
node_modules/rxjs/internal/types.d.ts(81,77): error TS1109: Expression expected.

我检查了该项目内部使用的依赖ng -version项,并在输出下方找到。

Angular CLI: 6.0.8
Node: 8.11.3
OS: win32 x64
Angular: 6.1.10
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.6.8
@angular-devkit/build-angular     0.6.8
@angular-devkit/build-optimizer   0.6.8
@angular-devkit/core              0.6.8
@angular-devkit/schematics        0.6.8
@angular/cdk                      7.2.1
@angular/cli                      6.0.8
@angular/material                 7.2.1
@ngtools/webpack                  6.0.8
@schematics/angular               0.6.8
@schematics/update                0.6.8
rxjs                              6.3.3
typescript                        2.7.2
webpack                           4.8.3

我的机器上安装了另一个 Angular 应用程序。

ng -version在这个应用程序中再次运行,给出了以下结果。

Angular CLI: 6.0.8
Node: 8.11.3
OS: win32 x64
Angular: 6.1.10
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.6.8
@angular-devkit/build-angular     0.6.8
@angular-devkit/build-optimizer   0.6.8
@angular-devkit/core              0.6.8
@angular-devkit/schematics        0.6.8
@angular/cli                      6.0.8
@ngtools/webpack                  6.0.8
@schematics/angular               0.6.8
@schematics/update                0.6.8
rxjs                              6.4.0
typescript                        2.7.2
webpack                           4.8.3

比较结果,我得到了以下差异

应用捐赠错误有

rxjs                              6.4.0

并且应用程序运行良好

rxjs                              6.3.3

我将未运行应用程序中的 rxjs 版本更改为如下package.json所示:

"rxjs": "6.3.3" 

问题得到解决

所以我有以下问题,有人可以回答这些吗?

1)我无法分析为什么降级rxjs version解决了这个问题?由于两个应用程序中的所有其他组件版本都相同。第一个应用程序(不运行一个使用角度材料作为添加)

2)我有两个应用程序来比较版本。如果不是这样,有没有办法找出这个错误是由于 rxjs 版本降级造成的?

标签: angularrxjs6

解决方案


答案 1 和 2:降级 rxjs 版本已解决,因为您使用的是旧的编译器版本。 在尝试安装最新版本的打字稿中
找到你的:package.json CTRL+F typescript

npm install -g typescript@latest. 

您也可以使用npm update而不是安装,而无需最新的修饰符。


推荐阅读