title: Async Await with Redux doesn't seem to work
body: <p>I'm trying to implement Async/Await function in my redux, but it doesn't seem to be working.</p>
  
  <p><strong>Actions.js</strong></p>
  
  <pre><code>export function getUserCart(token) {
    return async dispatch =&gt; {
      await axios
        .get(`${apiUrl}/user/cart`, {
          headers: { Authorization: `Bearer ${token}` }
        })
        .then(response =&gt; {
          dispatch({
  
          console.log(GET_USER_CART_SUCCESS);
            type: GET_USER_CART_SUCCESS,
            cart: response.data
          });
        })
        .catch(error =&gt; {
          dispatch({
            type: GET_USER_CART_FAILED,
            error: error.response.data
          });
        });
    };
  }
  </code></pre>
  
  <p><strong>Reducers.js</strong></p>
  
  <pre><code>case GET_USER_CART_SUCCESS:
        return {
          ...state,
          cart: action.cart,
          type: action.type
        };
  </code></pre>
  
  <p><strong>Component.js</strong></p>
  
  <pre><code>componentDidMount() {
      console.log("before");
      this.props.getUserCart(this.props.user.idToken);
      console.log("after");
    }
  </code></pre>
  
  <p>The console returned :</p>
  
  <pre><code>before
  after
  GET_USER_CART_SUCCESS
  </code></pre>
  
  <p>However, if I do this</p>
  
  <pre><code>async componentDidMount() {
      console.log("before");
      await this.props.getUserCart(this.props.user.idToken);
      console.log("after");
    }
  </code></pre>
  
  <p>it returns the correct output :</p>
  
  <pre><code>before
  GET_USER_CART_SUCCESS
  after
  </code></pre>
  
  <p>I'm not comfortable with adding async and await in my component's function, it shouldn't be that way either. Is there anything I'm missing from my actions.js?</p>