actionPromise.js 496 B

12345678910111213141516
  1. import { actionPending } from "./actionPending";
  2. import { actionResolved } from "./actionResolved";
  3. import { actionRejected } from "./actionRejected";
  4. export const actionPromise = (name, promise) =>
  5. async dispatch => {
  6. dispatch(actionPending(name))
  7. try{
  8. let payload = await promise
  9. dispatch(actionResolved(name, payload))
  10. return payload
  11. }
  12. catch(error){
  13. dispatch(actionRejected(name, error))
  14. };
  15. };