Advertisement
Guest User

Untitled

a guest
Oct 27th, 2016
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // THIS DOES MUTATE THE STATE
  2.             const assignments = {
  3.                 ...state.assignments
  4.             };
  5.  
  6.             _.forEach(assignments, (assignment, eventFunctionId) => {
  7.                 if (assignment.hasOwnProperty(action.employeeId)) {
  8.  
  9.                     if (_.includes(['applied', 'applied_provisional'], assignment[action.employeeId].status)) {
  10.                         assignments[eventFunctionId][action.employeeId].status = 'denied';
  11.                     }
  12.                 }
  13.             });
  14.  
  15.             return {
  16.                 ...state,
  17.                 assignments: assignments
  18.             }
  19.  
  20.             // WHILE THIS DOES NOT
  21.             let newState = {
  22.                 ...state
  23.             };
  24.  
  25.             _.forEach(state.assignments, (assignment, eventFunctionId) => {
  26.                 if (assignment.hasOwnProperty(action.employeeId)) {
  27.  
  28.                     if (_.includes(['applied', 'applied_provisional'], assignment[action.employeeId].status)) {
  29.  
  30.                         newState = {
  31.                             ...newState,
  32.                             assignments: {
  33.                                 ...newState.assignments,
  34.                                 [eventFunctionId]: {
  35.                                     ...newState.assignments[eventFunctionId],
  36.                                     [action.employeeId]: {
  37.                                         ...newState.assignments[eventFunctionId][action.employeeId],
  38.                                         status: 'denied'
  39.                                     }
  40.                                 },
  41.                             }
  42.                         };
  43.                     }
  44.                 }
  45.             });
  46.  
  47.             return newState;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement