Der folgende Code effektiv Versprechung Auflösung Versprechen zu true
und ein Versprechen Fehler zu false
.RxJS: Karte Versprechen Ergebnis und Versprechen Fehler zu verschiedenen Werten
onlineUpdate$
.switchMap(online => {
switch (online) {
default:
case true: {
const connected$ = new Rx.Subject();
axios.get("/some/url/to/test/connection")
.then(response => connected$.next(true))
.catch(error => connected$.next(false));
return connected$;
}
case false: {
return Rx.Observable.of(false);
}
}
});
Aber etwas über die Zwischen Rx.Subject
Schaffung fühlt sich an wie ich mehr Arbeit machte, als ich brauche. Gibt es eine elegantere oder eingebaute Möglichkeit, die Versprechensauflösung auf einen Wert abzubilden und einem anderen einen Fehler zu versprechen, ohne die Verwendung eines Zwischenprodukts Rx.Subject
oder eines anderen Observablen?
Während in diesem speziellen Fall nicht viel passieren kann, würde ich immer noch [empfehlen '. dann (..., ...) 'über' .then (...) .catch (...) '] (https://stackoverflow.com/q/24662289/1048572) – Bergi