services.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. import * as types from '../actionsTypes/actionsTypes'
  2. const defaultState = {
  3. services:[],
  4. categories:[],
  5. isFetching: false,
  6. error:null
  7. };
  8. export const servicesReducer = (state = defaultState, action) => {
  9. switch(action.type){
  10. case types.GET_SERVICES_REQUEST : {
  11. return {
  12. ...state,
  13. isFetching: true
  14. };
  15. }
  16. case types.GET_SERVICES_REQUEST_SUCCESS : {
  17. return {
  18. ...state,
  19. services:action.payload.services,
  20. isFetching: false
  21. };
  22. }
  23. case types.GET_SERVICES_REQUEST_FAIL : {
  24. return {
  25. ...state,
  26. error:action.payload,
  27. isFetching: false
  28. }
  29. }
  30. case types.GET_CATEGORIES_REQUEST : {
  31. return {
  32. ...state,
  33. isFetching: true
  34. };
  35. }
  36. case types.GET_CATEGORIES_REQUEST_SUCCESS : {
  37. return {
  38. ...state,
  39. categories:action.payload.categories,
  40. isFetching: false
  41. };
  42. }
  43. case types.GET_CATEGORIES_REQUEST_FAIL : {
  44. return {
  45. ...state,
  46. error:action.payload,
  47. isFetching: false
  48. }
  49. }
  50. default:
  51. return state
  52. }
  53. };