catch - 2
RxJS 5 catch
by Brian Troncone
HTML
<script src="https://npmcdn.com/@reactivex/[email protected]/dist/global/Rx.umd.js"></script>
JavaScript
//create promise that immediately rejects
const myBadPromise = () => new Promise((resolve, reject) => reject('Rejected!'));
//emit single value after 1 second
const source = Rx.Observable.timer(1000);
//catch rejected promise, returning observable containing error message
const example = source.flatMap(() => Rx.Observable
.fromPromise(myBadPromise())
.catch(error => Rx.Observable.of(`Bad Promise: ${error}`))
);
//output: 'Bad Promise: Rejected'
const subscribe = example.subscribe(val => console.log(val));