Не удается найти модуль 'rxjs-compat / Subscription' - PullRequest
0 голосов
/ 31 января 2019

enter image description here Я пытаюсь перейти с rx5 на rx6, следуя инструкции здесь .Первоначально я установил вместе с пакетом rxjs-compat, и все работает отлично.Однако, когда я пытаюсь удалить пакет rxjs-compat, я получаю исключение Cannot find module 'rxjs-compat/Subscription'.Я использовал rxjs-5-to-6-migrate для выполнения миграции

Я использую этот оператор для подписки: import {Subscription} from "rxjs";

Для справки это моя ветвь - https://github.com/akshita31/omnisharp-vscode/tree/rxjs_update, и это соответствующий запрос на извлечение, который перечисляет все изменения - https://github.com/OmniSharp/omnisharp-vscode/pull/2830

Ответы [ 2 ]

0 голосов
/ 01 февраля 2019

Я обновил все зависимости до последних версий и использовал rxjs-tslint-rules следующим образом

  1. npm install rxjs-tslint-rules --save-dev
  2. Затем в мой tslint.json добавьте правило "rxjs-no-compat" : true
  3. Выполните ./node_modules/.bin/tslint -c tslint.json -p tsconfig.json в папке проекта.Это даст весь набор недопустимых импортов
  4. Разрешите неправильный импорт и попробуйте удалить пакет rxjs-compat.
  5. Я также очистил свой кэш npm - npm cache clean --force
  6. Если больше нет ошибок, мы также можем удалить вышеуказанную зависимость tslint из пакета. Json Более подробную информацию можно найти ввыпуск.

Спасибо @cartant за помощь

0 голосов
/ 31 января 2019

Есть ли у вас случайно какие-то импорта, которые все еще используют rxjs-compat?

При переходе с rxjs 5 на 6 вам нужно быть очень осторожным со всеми импортами, так как вы неЯ не хочу импортировать какой-то модуль с неправильного пути.Я верю, что rxjs-tslint может вам помочь.

...