title: Updating nested redux state
body: <p>I have a reducer that receives an action with a payload that I need to update the state with. The problem is the data I need to update in the state is nested data.
  I've added my reducer below with some comment and what i tried to do so far. </p>
  
  <pre><code>export default function(state=data, action){
    switch (action.type) {
      case 'UPDATE_CONTACT_INFO':
        let appointment = state[action.appointmentIndex]; // This is the appointment that needs to be updated 
        appointment.notification.contactInfo = action.payload; // this is the data that needs to be updated with the payload. I tried updating it like this but then not sure how to add it to the state. 
        return state; // Somehow need to update the state with the new state
        break;
      default:
      return state;
    }
  }
  </code></pre>
  
  <p>Below is my initial data structure which I pass into the reducer as the default state.  </p>
  
  <pre><code> data = [
          {
          date: 'Friday, January 6',
          time: '4:00 PM-5:00 PM',
          notification:
            {
              contactInfo: [
                {
                  displayMethod:"Phone Call",
                  method:"Phone",
                  value:"3473686552"
                },
                {
                  displayMethod:"Email",
                  method:"Email",
                  value:"memedoe@gmail.com"
                }
              ]
            }
        },
        {
          date: 'Saturday, January 7',
          time: '2:00 PM-6:00 PM',
          notification:
            {
              contactInfo: [
                {
                  displayMethod:"Phone Call",
                  method:"Phone",
                  value:"2123686552"
                },
                {
                  displayMethod:"Email",
                  method:"Email",
                  value:"johndoe@gmail.com"
                }
              ]
            }
        }
      ];
  </code></pre>
  
  <p>The action.payload in the reducer data is the same structure as contactInfo array in one of the appointments. <code>[Object, Object]</code></p>