В последних дистрибутивах RXJS предусмотрены сломанные модули для уменьшения гигантского размера файла, à la Lodash. Импорт rxjs/Rx
(как предлагает другой ответ) предоставит вам всю библиотеку и не предлагается.
Вместо метод импорта и операторы по отдельности:
- для основных классов, импортировать класс из его контекстного модуля:
import { Observable } from 'rxjs/Observable'
- для методов экземпляра, используйте объем экземпляра в «добавить» сферу:
import 'rxjs/add/observable/fromEvent'
(примечание нет деструктурированного объект импорта - метод добавляется автоматически за счет импорта)
- для операторов, импорт из
add/operator
объема: import 'rxjs/add/operator/switchMap'
Импорт оператора однажды делает его доступным для всех экземпляров, поэтому рекомендуется собрать все части, которые вы используете в одном файле, и импортировать этот файл там, где это необходимо, I.E. путем повторного экспорта экземпляров, которые вы используете.
import { Observable } from 'rxjs/Observable';
import { BehaviorSubject } from 'rxjs/BehaviorSubject';
import 'rxjs/add/observable/fromEvent';
import 'rxjs/add/operator/flatMap';
import 'rxjs/add/operator/switchMap';
export { Observable, BehaviorSubject };
Попробуйте подстроить ваше приложение с помощью 'angular-cli', и по умолчанию оно будет использоваться' rxjs'. Вам просто нужно импортировать его в свой компонент. –
У меня слишком много ошибок при использовании angular-cli. поэтому я перешел в основную группу угловых команд проекта. Как угловой кли импортирует его? –