I need to create a subscription to an Observable
that is immediately disposed of when it is first called.
Is there something like:
obser
To supplement @Brandon's answer, using first()
or the like is also essential for updating a BehaviorSubject
based on its Observable
. For example (untested):
var subject = new BehaviorSubject({1:'apple',2:'banana'});
var observable = subject.asObservable();
observable
.pipe(
first(), // <-- Ensures no stack overflow
flatMap(function(obj) {
obj[3] = 'pear';
return of(obj);
})
)
.subscribe(function(obj) {
subject.next(obj);
});