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

Формулировка инструкций по миграции rxjs 5-6, а также подобных сообщений в блоге подразумевает, что просто наличие rxjs-compat в качестве зависимости нашего проекта наряду с rxjs, а затем Observables, Subjects и т. Д., Импортированных из 'rxjs' будет совместим с устаревшими операторами. например. Observable.of(3, 4, 5).concatMap(num => {/*...*/}), Однако, похоже, что это не так для нас. Вещи работают несколько ожидаемым образом, если мы импортируем напрямую из 'rxjs-compat', который не является предполагаемым путем миграции, а также неудобен тем, что объявления TypeScript для 'rxjs' более полны и имеют импорт для обоих ' rxjs 'и' rxjs-compat 'в одном и том же файле будут немного раздражать в будущем. Есть ли дополнительный шаг или ожидается импорт из 'rxjs-compat'?

1 ответ

Просто реорганизуйте свой код и не используйте уровень совместимости.

Observable.of(3, 4, 5).concatMap(num => {/*...*/})

становится

of(3, 4, 5).pipe(concatMap(num => {/*...*/}))

Вам будет гораздо лучше выполнить рефакторинг заранее.

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