Rxjs v 6. *
새로운 버전의 rxjs로 단순화되었습니다.
1) 연산자
import {map} from 'rxjs/operators';
2) 기타
import {Observable,of, from } from 'rxjs';
연결하는 대신. 예를 들면
이전 구문 :
source.map().switchMap().subscribe()
새로운 구문 :
source.pipe(map(), switchMap()).subscribe()
참고 : 일부 연산자는 JavaScript 예약어와 이름 충돌로 인해 이름이 변경되었습니다! 여기에는 다음이 포함됩니다.
do
-> tap
,
catch
-> catchError
switch
-> switchAll
finally
-> finalize
Rxjs v 5. *
연산자를 가져와야 할 때마다 문서를 계속 확인하기 때문에이 답변을 부분적으로 작성하고 있습니다. 더 나은 방법으로 할 수있는 일이 있으면 알려주세요.
1) import { Rx } from 'rxjs/Rx'
;
전체 라이브러리를 가져옵니다. 그러면 각 연산자를로드하는 것에 대해 걱정할 필요가 없습니다. 그러나 Rx를 추가해야합니다. 나는 트리 쉐이킹이 최적화되고 필요한 기능만을 선택하기를 바랍니다 (확인 필요) 코멘트에서 언급했듯이 트리 쉐이킹은 도움이되지 않습니다. 따라서 이것은 최적화 된 방법이 아닙니다.
public cache = new Rx.BehaviorSubject('');
또는 개별 연산자를 가져올 수 있습니다 .
이렇게하면 해당 파일 만 사용하도록 앱이 최적화됩니다. .
2) import { _______ } from 'rxjs/_________';
이 구문은 일반적으로 Rx
자체 또는Observable
등의 .
이 구문으로 가져올 수있는 키워드
Observable, Observer, BehaviorSubject, Subject, ReplaySubject
삼) import 'rxjs/add/observable/__________';
Angular 5 업데이트
rxjs 5.5.2+를 사용하는 Angular 5
import { empty } from 'rxjs/observable/empty';
import { concat} from 'rxjs/observable/concat';
이들은 일반적으로 Observable과 직접 함께 제공됩니다. 예를 들면
Observable.from()
Observable.of()
이 구문을 사용하여 가져올 수있는 다른 키워드 :
concat, defer, empty, forkJoin, from, fromPromise, if, interval, merge, of,
range, throw, timer, using, zip
4) import 'rxjs/add/operator/_________';
Angular 5 업데이트
rxjs 5.5.2+를 사용하는 Angular 5
import { filter } from 'rxjs/operators/filter';
import { map } from 'rxjs/operators/map';
이들은 일반적으로 Observable이 생성 된 후 스트림에 들어옵니다. flatMap
이 코드 조각 과 같이 :
Observable.of([1,2,3,4])
.flatMap(arr => Observable.from(arr));
이 구문을 사용하는 다른 키워드 :
audit, buffer, catch, combineAll, combineLatest, concat, count, debounce, delay,
distinct, do, every, expand, filter, finally, find , first, groupBy,
ignoreElements, isEmpty, last, let, map, max, merge, mergeMap, min, pluck,
publish, race, reduce, repeat, scan, skip, startWith, switch, switchMap, take,
takeUntil, throttle, timeout, toArray, toPromise, withLatestFrom, zip
FlatMap :
flatMap
에 별칭 이므로을 사용 mergeMap
하려면 가져와야 mergeMap
합니다 flatMap
.
/add
수입에 대한 참고 사항 :
전체 프로젝트에서 한 번만 가져 오면됩니다. 따라서 한 곳에서 수행하는 것이 좋습니다. 여러 파일에 포함되어 있고 그중 하나가 삭제되면 잘못된 이유로 빌드가 실패합니다.
import {Observable} from 'rxjs/Observable';
Observable을 가져올 수 있지만 promise를 사용하는 경우 모두 가져올 필요는 없습니다toPromise
.