Als «rxjs» getaggte Fragen

Die Reactive Extensions für JavaScript (RxJS) sind eine Reihe von Bibliotheken zum Erstellen asynchroner und ereignisbasierter Programme unter Verwendung beobachtbarer Sammlungen und der Komposition von Array Extras.

10
Wie kann ein Wert von einer Funktion zurückgegeben werden, in der sich ein Observable-Abonnement befindet?
Ich weiß nicht, wie ich einen Wert aus Observable extrahieren soll, der von einer Funktion zurückgegeben werden soll, in der Observable vorhanden ist. Ich brauche nur einen Wert davon, um zurückgegeben zu werden, sonst nichts. Aktuelle Version, die funktioniert function getValueFromObservable() { this.store.subscribe( (data:any) => { console.log(data) } ) } …

4
Wofür ist Pipe in RXJS?
Ich glaube, ich habe das Grundkonzept, aber es gibt einige Unklarheiten Im Allgemeinen verwende ich also ein Observable wie folgt: observable.subscribe(x => { }) Wenn ich Daten filtern möchte, kann ich Folgendes verwenden: import { first, last, map, reduce, find, skipWhile } from 'rxjs/operators'; observable.pipe( map(x => {return x}), first() …
95 angular  rxjs  rxjs5 

4
Abonnieren ist veraltet: Verwenden Sie einen Beobachter anstelle eines Fehlerrückrufs
Wenn ich den Linter laufen lasse, heißt es: subscribe is deprecated: Use an observer instead of an error callback Code (aus einer Angular 7 App mit Angular-Cli): this.userService.updateUser(data).pipe( tap(() => {bla bla bla}) ).subscribe( this.handleUpdateResponse.bind(this), this.handleError.bind(this) ); Ich weiß nicht genau, was ich verwenden soll und wie ... Vielen Dank!

9
Warum müssen wir flatMap verwenden?
Ich fange an, RxJS zu verwenden, und ich verstehe nicht, warum wir in diesem Beispiel eine Funktion wie flatMapoder verwenden müssen concatAll. Wo ist das Array von Arrays hier? var requestStream = Rx.Observable.just('https://api.github.com/users'); var responseMetastream = requestStream .flatMap(function(requestUrl) { return Rx.Observable.fromPromise(jQuery.getJSON(requestUrl)); }); responseMetastream.subscribe(url => {console.log(url)}) Wenn jemand visuell erklären kann, …
91 javascript  rxjs 

4
Verwenden eines Arrays aus Observable Object mit ngFor und Async Pipe Angular 2
Ich versuche zu verstehen, wie Observables in Angular 2 verwendet werden. Ich habe diesen Service: import {Injectable, EventEmitter, ViewChild} from '@angular/core'; import {Observable} from "rxjs/Observable"; import {Subject} from "rxjs/Subject"; import {BehaviorSubject} from "rxjs/Rx"; import {Availabilities} from './availabilities-interface' @Injectable() export class AppointmentChoiceStore { public _appointmentChoices: BehaviorSubject<Availabilities> = new BehaviorSubject<Availabilities>({"availabilities": [''], "length": …

3
So werfen Sie einen Fehler vom RxJS-Kartenoperator (eckig)
Ich möchte einen Fehler von meiner beobachtbar ist werfen Karte Betreiber auf der Grundlage einer Bedingung. Zum Beispiel, wenn keine korrekten API-Daten empfangen werden. Bitte beachten Sie den folgenden Code: private userAuthenticate( email: string, password: string ) { return this.httpPost(`${this.baseApiUrl}/auth?format=json&provider=login`, {userName: email, password: password}) .map( res => { if ( …

19
Fehler rxjs / Subject.d.ts: Die Klasse 'Subject <T>' erweitert die Basisklasse 'Observable <T>' fälschlicherweise.
Ich habe Beispielvorlagencode aus diesem Tutorial extrahiert und im Folgenden zwei Schritte ausgeführt, um loszulegen: npm install // worked fine and created node_modules folder with all dependencies npm start // fehlgeschlagen mit unten Fehler- node_modules/rxjs/Subject.d.ts(16,22): error TS2415: Class 'Subject&lt;T&gt;' incorrectly extends base class 'Observable&lt;T&gt;'. Types of property 'lift' are incompatible. …

10
Wie lässt man eine Observable-Sequenz warten, bis eine andere abgeschlossen ist, bevor sie gesendet wird?
Sagen wir, ich habe eine Observable, wie so: var one = someObservable.take(1); one.subscribe(function(){ /* do something */ }); Dann habe ich eine Sekunde Observable: var two = someOtherObservable.take(1); Nun möchte ich subscribe()zu two, aber ich möchte sicherstellen , dass oneabgeschlossen ist , bevor die twoTeilnehmer ausgelöst wird. Mit welcher Puffermethode …

10
Angular 4 Interceptor-Wiederholungsanforderungen nach Token-Aktualisierung
Hallo, ich versuche herauszufinden, wie die neuen Winkelabfangjäger implementiert und 401 unauthorizedFehler behandelt werden, indem das Token aktualisiert und die Anforderung erneut versucht wird. Dies ist der Leitfaden, dem ich gefolgt bin: https://ryanchenkie.com/angular-authentication-using-the-http-client-and-http-interceptors Ich kann die fehlgeschlagenen Anforderungen erfolgreich zwischenspeichern und kann das Token aktualisieren, aber ich kann nicht herausfinden, …

3
Rxjs: Observable.combineLatest vs Observable.forkJoin
Fragen Sie sich nur, was Unterschiede zwischen Observable.combineLatestund sind Observable.forkJoin. Soweit ich sehen kann, besteht der einzige Unterschied darin, forkJoindass erwartet wird, dass die Observables abgeschlossen sind, während combineLatestdie neuesten Werte zurückgegeben werden.
84 rxjs  rxjs5 


4
Promise.all Verhalten mit RxJS Observables?
In Angular 1.x musste ich manchmal mehrere httpAnfragen stellen und mit allen Antworten etwas anfangen. Ich würde alle Versprechen in ein Array werfen und anrufen Promise.all(promises).then(function (results) {...}). Best Practices für Angular 2 scheinen auf die Verwendung von RxJS Observableals Ersatz für Versprechen in httpAnfragen hinzuweisen . Wenn ich zwei …

8
RxJS-Sequenz entsprechend versprechen.then ()?
Früher habe ich viel mit Versprechen entwickelt und jetzt ziehe ich zu RxJS. Das Dokument von RxJS bietet kein sehr klares Beispiel für den Übergang von der Versprechenskette zur Beobachtersequenz. Zum Beispiel schreibe ich normalerweise eine Versprechenskette mit mehreren Schritten, wie z // a function that returns a promise getPromise() …
83 javascript  rxjs 


8
So kündigen Sie ein Abonnement in Angular2
Wie kündigt man ein Abonnement in Angular2? RxJS scheint eine Entsorgungsmethode zu haben, aber ich kann nicht herausfinden, wie ich darauf zugreifen soll. Ich habe also Code, der Zugriff auf einen EventEmitter hat und ihn wie folgt abonniert: var mySubscription = someEventEmitter.subscribe( (val) =&gt; { console.log('Received:', val); }, (err) =&gt; …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.