In the following code:-
RxJS.Observable.of(1,2).first().subscribe((x) => console.log(x););
is it necessary to unsubscribe given the operator first()
?
In the following code:-
RxJS.Observable.of(1,2).first().subscribe((x) => console.log(x););
is it necessary to unsubscribe given the operator first()
?
No. It unsubscribes automatically after calling first()
. The current syntax is observable.pipe(first()).subscribe(func);
for RxJS 6.
For the example provided, you dont need to unsubscribe
, and neither you need to call first
, as Observable.of(1)
actually completes after emitting its first (and last) value.
first()
will complete after the first item is emitted from the observable.
Also subscribe()
takes three arguments, the last one being the complete callback. Running the following code will output 1 followed by 'done'.
Rx.Observable.of(1)
.subscribe(
(x) => console.log(x), // next
(x) => console.error(x), // error
() => console.log('done') // done
)