Avatar ·

Was ist der Unterschied zwischen Subject und BehaviorSubject in RxJS?

Hallo zusammen! Ich habe gerade angefangen, RxJS in Angular zu lernen, und bin verwirrt über den Unterschied zwischen Subject und BehaviorSubject. Anscheinend werden beide verwendet, um Observable zu erstellen, aber ich verstehe nicht, wann man was anwenden soll. Ich habe einen Service zur Verwaltung des Benutzerzustands: ```typescript import { Injectable } from '@angular/core'; import { Subject } from 'rxjs'; @Injectable({ providedIn: 'root' }) export class UserService { private userSubject = new Subject(); user$ = this.userSubject.asObservable(); login(user: User) { this.userSubject.next(user); } logout() { this.userSubject.next(null); } } ``` Das Problem tritt auf, wenn ich `user$` abonniere, bevor `login()` oder `logout()` aufgerufen wurde. Der Abonnent erhält einfach keinen Wert, selbst