错误 TS1005:';'预期的。 TypeScript Angular 6 For First Build error rxjs inside node_modules

Posted

技术标签:

【中文标题】错误 TS1005:\';\'预期的。 TypeScript Angular 6 For First Build error rxjs inside node_modules【英文标题】:Error TS1005: ';' expected. TypeScript Angular 6 For First Build error rxjs inside node_modules错误 TS1005:';'预期的。 TypeScript Angular 6 For First Build error rxjs inside node_modules 【发布时间】:2019-06-23 08:45:06 【问题描述】:

我正在构建我的第一个 Angular 应用程序。我正在使用这个命令ng new purchase-section 创建一个新的 Angular 应用程序。但是当我使用ng serve -o 执行应用程序时,出现以下错误。

node_modules/rxjs/internal/types.d.ts(81,44) 中的错误:错误 TS1005: ';'预期的。 node_modules/rxjs/internal/types.d.ts(81,74):错误 TS1005:';'预期的。 node_modules/rxjs/internal/types.d.ts(81,77): 错误 TS1109:需要表达式。

我已经检查了types.d.ts,因为我知道它是由 Angular 创建的。 我无法理解错误。请注意,在我收到此错误后,我删除了 node_modules 并使用 npm install 安装了希望我能逃脱但仍然收到此错误。

这是我的package.JSON 文件:


 "name": "purchase-section",
 "version": "0.0.0",
  "scripts": 
"ng": "ng",
"start": "ng serve",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
 ,
 "private": true,
   "dependencies": 
    "@angular/animations": "^6.0.3",
     "@angular/common": "^6.0.3",
     "@angular/compiler": "^6.0.3",
     "@angular/core": "^6.0.3",
     "@angular/forms": "^6.0.3",
      "@angular/http": "^6.0.3",
      "@angular/platform-browser": "^6.0.3",
      "@angular/platform-browser-dynamic": "^6.0.3",
      "@angular/router": "^6.0.3",
       "core-js": "^2.5.4",
       "rxjs": "^6.0.0",
        "zone.js": "^0.8.26"
       ,
      "devDependencies": 
        "@angular-devkit/build-angular": "~0.6.8",
         "@angular/cli": "~6.0.8",
         "@angular/compiler-cli": "^6.0.3",
          "@angular/language-service": "^6.0.3",
           "@types/jasmine": "~2.8.6",
           "@types/jasminewd2": "~2.0.3",
            "@types/node": "~8.9.4",
             "codelyzer": "~4.2.1",
              "jasmine-core": "~2.99.1",
               "jasmine-spec-reporter": "~4.2.1",
                "karma": "^4.0.0",
                 "karma-chrome-launcher": "~2.2.0",
                  "karma-coverage-istanbul-reporter": "~2.0.0",
                   "karma-jasmine": "~1.1.1",
                 "karma-jasmine-html-reporter": "^0.2.2",
                 "protractor": "^5.4.2",
                  "ts-node": "~5.0.1",
                  "tslint": "~5.9.1",
                "typescript": "~2.7.2"
                 
               

【问题讨论】:

RxJS GitHub 页面上的相关问题:github.com/ReactiveX/rxjs/issues/4512 嘿,你有没有找到这个问题的答案,我遇到了同样的问题,以下答案都没有解决任何问题。顺便说一句,我正在使用 ng4(Angular 4)。 第 81 行是哪一行? 这可能会有所帮助***.com/a/59941420/4378475 【参考方案1】:

我当前的项目在 angular 8 的 asp.net MVC 中。将 angular 项目从 8 更新到 9 后,angular 构建工作正常,但面临 MVC 构建的上述问题。 (天蓝色)

只是隐藏

节点模块

文件夹,解决了我的问题。

【讨论】:

是的,谢谢 - Visual Studio 在隐藏时将 node_modules 排除在外。【参考方案2】:

你的 package.json 有以下几行:

"rxjs": "^6.0.0",

"typescript": "~2.7.2"

这告诉 npm 安装以下版本

rxjs: 6 系列最新版本6.4.0

typescript:次要版本 2.7 中的最新修补版本,即 2.7.2

现在 RxJS 模块也安装了 TypeScript 的类型定义文件。你项目中安装的 rxjs 模块中包含的类型定义文件与同一个项目中安装的 typescript 版本不兼容。

因此,作为 package.json 文件中的解决方案,您可以将 Typescript 的版本升级为 2.8

"typescript": "^2.8.0"

或将ngrx的版本降低到类似

"ngrx": "~6.0.0"

重新安装 npm。

您可以通过查看以下文件来检查已安装模块的版本号:

node_modules/rxjs/package.json and
node_modules/typescript/package.json 

【讨论】:

【参考方案3】:

以下步骤解决了我的问题

有两个文件需要修改。

node_modules\@ag-grid-community\core\dist\cjs\utils\index.js

//export * from "./utils";

node_modules\@ag-grid-community\core\dist\cjs\utils\index.d.ts

//_export(require("./utils"));

如上评论实用程序。现在 npm 开始

【讨论】:

【参考方案4】:

进入项目目录运行:

npm install -s rxjs-compat

【讨论】:

【参考方案5】:

我更改了 rxjs 和 typescript 的版本。我的package.json 有以下条目:

"typescript": "^2.7.2"
"rxjs": "^6.3.3",

我还必须升级 angular cli。

【讨论】:

【参考方案6】:

我不得不卸载并重新安装 Angular CLI。

npm uninstall -g @angular/cli angular-cli
npm cache clean
npm install -g @angular/cli@latest
npm install -g @angular/cli@latest

【讨论】:

【参考方案7】:

进入项目目录运行:npm install rxjs@6.0.0 --save

【讨论】:

【参考方案8】:

使用以下命令检查您的打字稿版本。

~ tsc --version Version 3.3.3

由于这是最新的 typescript 版本,我已通过在项目主文件夹中运行以下命令将项目 angular 版本升级到 7。它解决了这个问题。

~]#ng update @angular/cli @angular/core

【讨论】:

【参考方案9】:

遇到此错误: rxjs/存储:^6.4.0 打字稿:~2.7.2 角度/cli ~6.0.0

除了 rxjs 之外的所有内容都更新到了最新版本 rxjs/存储:^6.3.3 打字稿:~3.1.1 角度/cli ~7.0.3

基本上,我创建了一个空白的新项目 (ng new newProject) 并安装了 @ngrx/store,它关闭了 v6.3.3。这对我有用。

【讨论】:

【参考方案10】:

今天我遇到了同样的问题。除了@Nasreen Ustad 的评论外,上述答案均无效。所以你要做的是:

    进入package.json,修改"rxjs": "^6.0.0""rxjs": "6.0.0" 在您的项目中运行npm update

无需更改打字稿版本。(我的:"typescript": "~2.7.2"

【讨论】:

@shubham 实际上我现在已经移动到 angular 10。无法模拟这个。【参考方案11】:

在 package.json 中更新 rxjs": "6.3.3"

在终端 1.运行npm更新 2.运行ng服务

应该编译成功

【讨论】:

【参考方案12】:

我在开发 angular6 项目时遇到了同样的问题。我花了更多时间终于对我有用。

解决办法如下:

    打开“package.json”

    rxjs 和“TypeScript”版本如下图所示

    更改如下截图:

    接下来转到您的项目文件夹并删除“node_modules”文件夹。

    删除后,在你的项目文件夹中运行npm install

    最终运行ng serve。它应该可以工作(我尝试了 3 个项目并确认了)。

【讨论】:

这似乎对我有用,但你知道这个错误的真正原因是什么吗?我的意思是直到现在它与“^”符号配合得很好。您是否有更多关于导致此错误的原因的详细信息?谢谢 有关详细信息,请阅读下面的@langrenn 答案,我认为这是原因。【参考方案13】:

在您的Package.json 文件中,从"rxjs": "^6.0.0" 中删除^ 符号(插入符号)并添加"rxjs": "6.0.0",它将正常工作。

【讨论】:

这只是this oneIMO 的重复答案。在此处发布之前,请检查其他答案。【参考方案14】:

只需将 TypeScript 依赖版本更改为 ^2.8

【讨论】:

【参考方案15】:

您可以将您的npm 版本更新到最新版本,如果不是,则:

npm update -g

【讨论】:

【参考方案16】:

您的 Angular 和/或 rxjs 版本似乎与 TypeScript 不兼容。

删除 TypeScript 版本中的 ~ 符号,改为添加 ^。然后,再次安装包。

尝试在ng serve 之前运行npm startng build

【讨论】:

在此之后重新启动 Visual Studio。你现在的 TS 版本是多少? 这对我有帮助。谢谢! (新版本 2.9.2 完美运行)【参考方案17】:

我遇到了同样的问题。我调查了rxjs发布了一个新版本:6.4.0。它破坏了构建。根据review,TypeScript 支持的最低版本是2.8。如果您不想更新 TypeScript 版本,只需将 "rxjs": "^6.0.0", to "rxjs": "6.3.3" 更改为 package.json

【讨论】:

我的 "typescript": "~3.2.2" 和 "rxjs": "6.3.3" 有同样的问题,请告诉我如何解决这个错误? 只需将 package.json 中的 "rxjs": "^6.0.0", 更改为 "rxjs": "6.3.3" 并再次运行命令 npm install 以便它会在您的项目中更新它。现在它可以工作了 另外,如果您的 package.json 对 rxjs-compat 有依赖关系,那么也将其设为 6.3.3,这样您就不会收到任何错误 @kalai 嗨,我遇到了同样的问题,我将 rxjs 版本更改为 6.3.3,并删除了节点模块并重新安装,现在它正在工作,我使用的是 typescript 版本 2.7.2 @codemt 我的项目在命令提示符下成功运行,但仅在 Visual Studio 2017 中出现错误【参考方案18】:

这两个改变你想要的:

// in package.json:

"rxjs": "^6.2.2" ==> "rxjs": "latest""typescript": "2.7.2" ==> "typescript": "2.8"

其中==>表示替换

【讨论】:

【参考方案19】:

我已经尝试了所有其他答案。但是我发现了问题。我安装了 ts lint 插件,它强制文件在没有空间的情况下结束。我删除了它,它正在工作。

您还可以删除指向该特定文件的空间。

【讨论】:

【参考方案20】:

只需从"rxjs": "^6.0.0" 文件中的"rxjs": "^6.0.0" 中删除^ 字符并使其变为"rxjs": "6.0.0"。它应该可以正常工作。

【讨论】:

然后我不得不删除我的node_modules 并再次运行npm i,但它起作用了。 (替代方案:npm update

以上是关于错误 TS1005:';'预期的。 TypeScript Angular 6 For First Build error rxjs inside node_modules的主要内容,如果未能解决你的问题,请参考以下文章

Angular 8应用程序编译显示:“错误TS1005:':'预期” [重复]

错误:node_modules/@angular/material/core/common-behaviors/constructor.d.ts:14:64 - 错误 TS1005:';'预期的

错误 TS1005:';'预期的。 TypeScript Angular 6 For First Build error rxjs inside node_modules

node_modules/graphql-tag/lib/index.d.ts(2,57) 中的 Angular 7 错误:错误 TS1005:“,”预期

node_modules/firebase-functions/lib/function-configuration.d.ts:4:64 - 错误 TS1005: ']' 预期

数组中的展开操作出错。 TS1005:“,”预期。打字稿