RxJs bekommen Wert aus beobachtbaren
In-Komponente :
singleEvent$: Observable<Event>;
Auf init, bekomme ich beobachtbaren
this.singleEvent$ = this._eventService.events$
.map(function (events) {
let eventObject = events.find(item => item.id === eventid);
let eventClass: Event = new Event(eventObject);
return eventClass;
});
Wie kann ich den aktuellen Wert wie event.name
?
- Fügen Sie bitte mehr code der Frage. Ein plunk auch tun würde.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Abrufen von Daten aus einem beobachtbaren, müssen Sie abonnieren:
In der Vorlage können Sie direkt binden observablen mit der
| async
Rohr:Hinzufügen Günter Zöbauer Antwort, eine BehaviorSubject kann das sein, was Sie suchen, wenn Sie schauen, um synchron um den Wert im inneren des Beobachtbaren.
Einen BehaviorSubject ist ein Beobachtbares, das hat immer einen Wert, und Sie können anrufen
myBehaviorSubject.getValue()
odermyBehaviorSubject.value
um synchron um den Wert der BehaviorSubject aktuell hält.Da es sich eine beobachtbare, können Sie immer noch abonnieren BehaviorSubject asynchron reagieren auf änderungen im Wert, dass es hält (z.B.
myBehaviorSubject.subscribe(event => { this.event = event })
) und verwenden Sie die async-Leitung in der Komponente template (z.B.{{ myBehaviorSubject | async }}
).Hier einige Verwendungs-passend zu Ihrer gegebenen Beispiel zum erstellen einer BehaviorSubject in der Komponente, aus der gegebenen service:
const foo = await obs$.pipe(take(1)).toPromise()
innerhalb einer asynchronen Funktion.BehaviorSubject
auf Ihre Komponenten?! Was ist der Punkt, der mitObservable
(Klonen), wenn Sie nur freilegen derBehaviorSubject
?