title: Right way to update state in redux reducers
body: <p>I'm a newbie in redux and es6 syntax. I make my app with official redux tutorial, and with this <a href="http://redux.js.org/docs/advanced/ExampleRedditAPI.html" rel="noreferrer">example</a>. </p>
  
  <p>There is JS snippet below. My point - to define REQUEST_POST_BODY and RECEIVE_POST_BODY cases in posts reducer. 
  Main difficult - to find and update right object in store.</p>
  
  <p>I try to use code from example:</p>
  
  <pre><code>  return Object.assign({}, state, {
      [action.subreddit]: posts(state[action.subreddit], action)
    })
  </code></pre>
  
  <p>But it used simple array of posts. It's not needed to find right post by id.</p>
  
  <p>Here my code:</p>
  
  <pre><code>  const initialState = {
      items: [{id:3, title: '1984', isFetching:false}, {id:6, title: 'Mouse', isFetching:false}]
    }
  
    // Reducer for posts store
    export default function posts(state = initialState, action) {
      switch (action.type) {
      case REQUEST_POST_BODY:
        // here I need to set post.isFetching =&gt; true
      case RECEIVE_POST_BODY:
        // here I need to set post.isFetching =&gt; false and post.body =&gt; action.body
      default:
        return state;
      }
    }
  
    function requestPostBody(id) {
      return {
        type: REQUEST_POST_BODY,
        id
      };
    }
  
    function receivePostBody(id, body_from_server) {
      return {
        type: RECEIVE_POST_BODY,
        id,
        body: body_from_server
      };
    }
  
    dispatch(requestPostBody(3));
    dispatch(receivePostBody(3, {id:3, body: 'blablabla'}));
  </code></pre>