Advertisement
Guest User

Untitled

a guest
Jul 20th, 2019
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.05 KB | None | 0 0
  1. import { dispatch, req } from "hf-rt";
  2.  
  3. const initialState = { episodes: [], favourites: [], isComplete: false };
  4.  
  5. export default {
  6. name: "home",
  7. actions: {
  8. addFav: payload => dispatch({ type: "ADD_FAV", payload }),
  9. removeFav: payload => dispatch({ type: "REMOVE_FAV", payload }),
  10. fetchData: payload => dispatch({ type: "FETCH_DATA", payload }),
  11. fetchDataAction: async function() {
  12. const data = await req.get({
  13. credentials: "omit",
  14. api: "episodes",
  15. headers: {}
  16. });
  17. const payload = data._embedded.episodes;
  18. this.fetchData(payload);
  19. }
  20. },
  21. reducers: function(state = initialState, action) {
  22. switch (action.type) {
  23. case "FETCH_DATA":
  24. return { ...state, episodes: action.payload, isComplete: true };
  25. case "ADD_FAV":
  26. return {
  27. ...state,
  28. favourites: [...state.favourites, action.payload]
  29. };
  30. case "REMOVE_FAV":
  31. return {
  32. ...state,
  33. favourites: action.payload
  34. };
  35. default:
  36. return state;
  37. }
  38. }
  39. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement