Middle
Was ist ein Observable?
sobes.tech KI
Antwort von AI
Observable — ist ein Datenstrom, der Werte asynchron ausgeben kann. Im Gegensatz zu Promises, die einen einzelnen Wert zurückgeben, kann ein Observable null, einen oder mehrere Werte im Laufe der Zeit ausgeben.
Wichtige Eigenschaften:
- Lazy: Der Datenstrom beginnt erst bei Abonnement.
- Abbestellbar: Man kann sich vom Strom abmelden, um seine Ausführung zu stoppen und Ressourcen freizugeben.
- Mehrere Werte: Kann mehrere Werte ausgeben, während Promises nur einmal auflösen.
Hauptkomponenten:
- Observable: Der Datenstrom selbst.
- Observer: Objekt mit den Methoden
next,errorundcomplete, die vom Observable aufgerufen werden. - Subscription: Ergebnis des Abonnements an ein Observable, ermöglicht das Abbestellen.
- Operatoren: Funktionen, die Observable transformieren oder kombinieren (z.B.
map,filter,merge).
Beispiel (RxJS):
import { of } from 'rxjs';
import { map } from 'rxjs/operators';
const source = of(1, 2, 3); // Erstellen eines Observable, das 1, 2, 3 ausgibt
const example = source.pipe(map(x => x + 1)); // Anwenden des Operators map
const subscription = example.subscribe({ // Abonnieren des Observable
next: value => console.log(`Next: ${value}`), // Verarbeitung jedes Wertes
error: err => console.error(`Error: ${err}`), // Fehlerbehandlung
complete: () => console.log('Complete!') // Wird bei Abschluss aufgerufen
});
// Ausgabe:
// Next: 2
// Next: 3
// Next: 4
// Complete!
// subscription.unsubscribe(); // Abmeldung möglich