Search⌘ K
AI Features

Multicasting with the Subject Class

Explore how the RxJS Subject class functions as both an observer and an observable, allowing multicasting of events to multiple subscribers. Understand the use of AsyncSubject for managing AJAX requests by broadcasting the final value to all subscribers once complete. This lesson teaches you to manage subscriptions effectively using Subjects to build responsive applications.

We'll cover the following...

Subjects

At its core, a Subject acts much like a regular observable, but each subscription is hooked into the same source, like the publish/share example.

Subjects also are observers and have next, error, and done methods to send data to all subscribers at once:

TypeScript 3.3.4
const { Subject} = require('rxjs');
let mySubject = new Subject();
mySubject.subscribe(val => console.log('Subscription 1:', val));
mySubject.subscribe(val => console.log('Subscription 2:', val));
mySubject.next(42);
/*
Console output:
Subscription 1: 42
Subscription 2: 42
*/

Because subjects are observers, they can be passed directly into a subscribe call, and all the events from the original observable will be sent through ...