Is it possible to get all the \"active\" subscriptions without storing them manually?
I\'d like to unsubscribe
all of the \"active\" subscriptions and don\'
I depends on whether you're using a Subject or an Observable but there's probably no way to do this "automatically".
I don't think you can have such thing as "subscribed Observable" because you either store an Observable or Subscription:
const source = Observable.of(...)
.map(...);
const subscription = source
.subscribe();
Here source
represents an Observable and subscription
represents a single subscription.
Note that you can have a Subscription
instance that stores multiple other subscriptions:
const subscriptions = new Subscription();
const sub1 = Observable...subscribe();
const sub2 = Observable...subscribe();
const sub3 = Observable...subscribe();
subscriptions.add(sub1).add(sub2).add(sub3);
// Then unsubscribe all of them with a single
subscriptions.unsubscribe();
If you're using Subjects they do have the unsubscribe
method themselves, see https://github.com/ReactiveX/rxjs/blob/master/src/Subject.ts#L96.
However be aware that this makes the Subject "stopped", for more info see https://medium.com/@martin.sikora/rxjs-subjects-and-their-internal-state-7cfdee905156