Files
freeCodeCamp/common/app/redux/fetch-user-saga.js
Berkeley Martinez d511be3332 Add new rx saga
2016-07-28 23:39:17 -07:00

21 lines
536 B
JavaScript

import { Observable } from 'rx';
import { handleError, setUser, fetchUser } from './types';
export default function getUserSaga(action$, getState, { services }) {
return action$
.filter(action => action.type === fetchUser)
.flatMap(() => {
return services.readService$({ service: 'user' })
.map(user => {
return {
type: setUser,
payload: user
};
})
.catch(error => Observable.just({
type: handleError,
error
}));
});
}