Угловой от 2 до 4 - ошибка в Rxjs Subject.d.ts

Когда мы запустили несколько проектов, 3 в ng2 и 1 в ng4, независимо все это работало. Один проект использует datatables.net тоже. При попытке интегрировать и обновить все до ng4, я получил эту ошибку.

  1. Вход в систему является компонентом одного приложения, а другие используют login.html - какой подход лучше?

  2. ошибка в компиляции

    Класс Subject неправильно расширяет базовый класс Observable. Типы имущества "Лифт" несовместимы. Тип "(оператор: оператор) => наблюдаемый" не может быть назначен типу (оператор: оператор) => наблюдаемый ". Тип "Наблюдаемый" не может быть назначен типу "Наблюдаемый". Тип "T" нельзя назначить типу "R".

rxjs был версии 5.4.2

решенные версии [rxjs был обновлен до 5.4.2 - и понижен до 5.0.1] Чтобы упомянуть подробную проблему после того, как приложение работает

{
  "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"
  }
}

1 ответ

Решение

Эта ошибка произошла при обновлении TypeScript.

Вы должны обновить все ваши пакеты. Но возможно, что некоторые пакеты не приняли последнюю модификацию TypeScript.

Затем вы можете внести свой вклад в эти проекты, чтобы сделать их совместимыми, или вам следует перейти на последнюю версию Angular 4, которая поддерживает TypeScript 4.1.

Другие вопросы по тегам