rxjs5. X 시리즈 - 오류 처리 / 조건 / 수학 시리즈 api 노트
14072 단어 NG4
본문 은 필자 가 번역 한 것 이다. RxJS 5. X 홈 페이지 각종 operation 작업 시리즈 의 네 번 째 편 —— ErrorHanding 이상 처리, Condition Operator 상황 조작, Mathmatical 수학 조작.오류 가 있 으 면 알림 O (∩ ∩) O 를 지적 해 주 십시오.더 자세 한 자 료 는 rxjs 홈 페이지 [http://reactivex.io/rxjs/manual/overview.htm] 데모 예 가 있 는 사이트 와 [http://xgrommx.github.io/rx-book/content/observable】。
본 논문 에서 Error Handing 작업 에 관 한 내용 은 catch, retry, retry When 이다.
Condition 작업 에 대한 내용 은 default IfEmpty, every, find, findIndex, isEmpty 입 니 다.
Mathmatical 작업 에 관 한 내용 은 count, max, min, reduce 입 니 다.
캐 치
현재 Observable 에 발생 할 수 있 는 오 류 를 잡 습 니 다. 원본 Observable 에 이상 이 발생 하면 계속 발사 치 를 정지 합 니 다.
let r$ = Rx.Observable.create(( observer) => {
observer.next( 1 );
observer.error( 'hello' );
observer.next( 2 );
}).catch( err => console.log( err ))
r$.subscribe( x => console.log( x ))
// :1, 'hello'
// :2
retry
원본 Observable 이 이상 을 던 졌 을 때 원본 Observable 을 다시 실행 하고 매개 변수 설정 에 따라 다시 실행 할 수 있 습 니 다.
let r$ = Rx.Observable.create(( observer) => {
observer.next( 1 );
observer.next( 2 );
observer.error( 'hello' );
}).retry( 2 )
r$.subscribe( x => console.log( x ))
// :1,2
// :1,2, 1,2 2
3. retryWhen
조건 치 를 만족 시 키 면 원본 Observable 을 계속 다시 실행 합 니 다.
this.http.get( url,options )
.retryWhen(( errors ) => {
return errors
.mergeMap((error) => (error.status === 429) ? Observable.throw(error) : Observable.of(error))
.delay(1000)
.take(2);
})
.catch((res) => this.handleError(res));
// angular2 http
4. defaultIfEmpty
Observable 이 끝 났 을 때 아무런 값 도 발사 하지 않 았 다 면 이 작업 의 매개 변수 값 을 발사 합 니 다.
Rx.Observable.empty( )
.defaultIfEmpty( 42 )
.subscribe( x => console.log( x ))
// 42
모두
Observable 이 발사 하 는 모든 값 이 조건 에 부합 되면 true 로 돌아 가 고 그렇지 않 으 면 false 로 돌아 갑 니 다.
Rx.Observable.of( 1, 2, 3, 4 )
.every( x => x < 5 )
.subscribe( x => console.log( x ))
// :true
여섯, find
Observable 이 발사 한 첫 번 째 조건 에 맞 는 항목 을 되 돌려 줍 니 다.
Rx.Observable.of( 1, 2, 3, 4, 5, 15 )
.find( x => x % 5 === 0 )
.subscribe( x => console.log( x ))
// :5
7. findIndex
Observable 이 발사 한 첫 번 째 조건 에 맞 는 항목 의 하 표를 되 돌려 줍 니 다.
Rx.Observable.of( 1, 2, 3, 4, 5 )
.findIndex( x => x % 5 === 0 )
.subscribe( x => console.log( x ))
// :4
8. isEmpty
Observable 이 비어 있 는 지 판단 하면 true 로 돌아 갑 니 다. 그렇지 않 으 면 false 로 돌아 갑 니 다.
Rx.Observable.empty( )
.isEmpty( )
.subscribe( x => console.log( x ))
// :true
아홉
Observable 이 발사 치 를 정지 할 때 Observable 이 발사 한 항목 의 개 수 를 되 돌려 줍 니 다.
Rx.Observable.of( 1,2,3,4 )
.count( )
.subscribe( x => console.log( x ))
// :4
최대
Observable 이 발사 치 를 정지 할 때 Observable 이 발사 한 최대 수치 항목 의 값 을 되 돌려 줍 니 다.
Rx.Observable.of( 1,2,100,3,4 )
.max( )
.subscribe( x => console.log( x ))
// :100
11. min
Observable 이 발사 치 를 정지 할 때 Observable 이 발사 한 최소 수치 항목 의 값 을 되 돌려 줍 니 다.
Rx.Observable.of( 100,1,2,3,4 )
.min( )
.subscribe( x => console.log( x ))
// :1
12 、 reduce
Observable 이 발사 한 시퀀스 에 대해 reduce 중첩 작업 을 진행 합 니 다.
Rx.Observable.of( 1,2,3,4,5 )
.reduce(( pre , cur) => pre + cur, 100)
.subscribe( x => console.log( x ))
// :115
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
rxjs5. X 시리즈 - 오류 처리 / 조건 / 수학 시리즈 api 노트Mathmatical 작업 에 관 한 내용 은 count, max, min, reduce 입 니 다. 원본 Observable 에 이상 이 발생 하면 계속 발사 치 를 정지 합 니 다. Observable 이 끝 났...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.