Angular 2 到 4 - Rxjs 中的错误 Subject.d.ts

Angular 2 to 4 - error in Rxjs Subject.d.ts

当我们启动多个项目时,在 ng2 中有 3 个,在 ng4 中有 1 个,它们都独立工作。一个项目也使用 datatables.net。当尝试集成并全部升级到 ng4 时,出现此错误。

  1. 登录是 1 个应用程序中的一个组件,其他人使用 login.html - 什么是更好的方法?

  2. 编译错误

    Class 'Subject' incorrectly extends base class 'Observable'. Types of property 'lift' are incompatible. Type '(operator: Operator) => Observable' is not assignable to type '(operator: Operator) => Observable'. Type 'Observable' is not assignable to type 'Observable'. Type 'T' is not assignable to type 'R'.

rxjs 是版本 5.4.2

solved versions [rxjs was upgraded to 5.4.2 - and downgraded to 5.0.1] To mention the detailed issue after the app working is

{
  "dependencies": {
    "@angular/animations": "^4.1.1",
    "@angular/common": "~4.3.2",
    "@angular/compiler": "~4.3.2",
    "@angular/core": "~4.3.2",
    "@angular/forms": "~4.3.2",
    "@angular/http": "~4.3.2",
    "@angular/platform-browser": "~4.3.2",
    "@angular/platform-browser-dynamic": "~4.3.2",
    "@angular/router": "~4.3.2",
    "alertify.js": "^1.0.12",
    "angular-datatables": "^4.1.0",
    "angular2-jwt": "^0.2.3",
    "chart.js": "2.6.0",
    "core-js": "^2.4.1",
    "datatables.net": "^1.10.15",
    "datatables.net-buttons": "2.2.0",
    "datatables.net-buttons-dt": "1.3.1",
    "datatables.net-colreorder": "1.3.3",
    "datatables.net-colreorder-dt": "1.3.3",
    "datatables.net-dt": "^1.10.15",
    "datatables.net-responsive": "^2.1.1",
    "datatables.net-responsive-bs": "^2.1.1",
    "datatables.net-scroller": "1.4.2",
    "file-loader": "^0.11.2",
    "font-awesome": "^4.7.0",
    "font-awesome-sass-loader": "^2.0.1",
    "fullcalendar": "^3.1.0",
    "jquery": "^3.2.1",
    "moment": "^2.17.1",
    "nanoscroller": "0.8.7",
    "primeng": "4.0.0",
    "quill": "^1.1.8",
    "rxjs": "^5.0.1",
    "ts-helpers": "^1.1.1",
    "url-loader": "^0.5.9",
    "zone.js": "^0.8.16"
  },
  "devDependencies": {
    "@angular/cli": "1.2.6",
    "@angular/compiler-cli": "^4.3.2",
    "@types/datatables.net": "^1.10.5",
    "@types/datatables.net-buttons": "~1.1.2",
    "@types/jasmine": "2.5.53",
    "@types/jquery": "^2.0.43",
    "@types/node": "^8.0.17",
    "codelyzer": "~3.1.2",
    "jasmine-core": "2.7.0",
    "jasmine-spec-reporter": "4.1.1",
    "karma": "1.7.0",
    "karma-chrome-launcher": "^2.0.0",
    "karma-cli": "^1.0.1",
    "karma-jasmine": "^1.0.2",
    "karma-remap-istanbul": "^0.6.0",
    "node-sass": "^4.5.3",
    "protractor": "~5.1.2",
    "ts-node": "3.3.0",
    "tslint": "^5.5.0",
    "typescript": "~2.4.2",
    "webpack": "3.4.1",
    "webpack-dev-server": "2.6.1",
    "webpack-merge": "^4.1.0"
  }
}

TypeScript 升级时出现此错误。

您应该升级所有软件包。但是有可能有些包没有采用最后的 TypeScript 修改。

然后你可以为这些项目做出贡献,使它们兼容,或者你应该降级到支持 TypeScript 4.1 的最后一个 Angular 4 版本。