RxJS Observer
이번에는 RxJS의 구성요소 중 observer
에 대해서 알아보겠습니다.Observable
에 의해 전달 된 값을 처리하는 콜백 콜렉션입니다.Observer
는 Observable
에 의해 전달되는 특정한 알림에 대한 간단한 콜백함수 집합(next
, error
, and complete
)입니다.
다음은 일반적인 Observer
객체의 예입니다.
1 | var observer = { |
Observer
를 사용하기 위해서 Observable
의 subscribe
에게 Observer
를 인자로 넘깁니다.
1 | observable.subscribe(observer); |
Observer는 Observable이 전달하는 특정 알림에 대한 3개의 콜백을 가진 객체입니다.
RxJS의 Observer
는 불완전하게 쓰일 수 있습니다. 콜백 중 하나를 제공하지 않을경우, Observable
에서 해당 콜백이 없기 때문에 일부 유형의 알림이 무시된다는 점을 제외하면 Observable
의 실행은 계속 정상적으로 수행됩니다.
아래의 예제는 observer
의 complete
이 없는 케이스입니다.
1 | var observer = { |
Observable
을 subscribe
할 때, Observer
객체 대신 콜백을 arguments
로 제공할 수 있습니다.
1 | observable.subscribe(x => console.log('Observer got a next value: ' + x)); |
observable.subscribe
는 첫번째 콜백 argument
를 사용해서 Observer
객체의 next
핸들러를 만듭니다. 총 3개의 콜백 타입은 아래와 같이 쓸 수 있습니다.
1 | observable.subscribe( |