ignoreElements연산자는 옵저버블이 방출하는 NextEvent를 필터링하고 CompletedEvent와 ErrorEvent만 구독자로 전달한다.
let fruits = ["🍏", "🍎", "🍋", "🍓", "🍇"]
Observable.from(fruits)
.subscribe{ print($0) }
.disposed(by: disposeBag)
//next(🍏)
//next(🍎)
//next(🍋)
//next(🍓)
//next(🍇)
//completed
과일 문자열을 방출하는 옵저버블이다.
아직 필터링 하지 않았고 문자열을 방출한 다음 Completed가 방출된다.
ignoreElements연산자로 NextEvent를 필터링할 수 있다.
ignoreElements연산자는 파라미터를 받지 않는다. 리턴타입을 보면 Observable이며 타입파라미터는 Never이다.
CompletedEvent 또는 ErrorEvent만 전달하고, NextEvent는 무시한다.
주로 작업에 성공과 실패에만 관심있을때 사용한다.
Observable.from(fruits)
.ignoreElements()
.subscribe{ print($0) }
.disposed(by: disposeBag)
//completed
실행 결과를 보면 completedEvent만 전달한다.
옵저버블은 요소를 계속 방출할 수 있지만 ignoreElement연산자가 필터링하고 있기 때문에 전달되지 않는다.