title: React : Action creator not calling reducer
body: <p>I am making an async call in my action creator and calling my reducer with the result, but for some reason i could not fathom the reducer is not being called.</p>
  
  <p>actions.js (action and action creator)</p>
  
  <pre><code>export const GET_FORMS = 'GET_FORMS'
  
  export function getForms() {
    $.get("server url", function(result) {
     return {
      type: GET_FORMS,
      formlist: result.data.forms
     }   
    })
   }
  </code></pre>
  
  <p>reducers.js</p>
  
  <pre><code>import { GET_FORMS } from '../actions/actions'
  
  export default function formAction(state = {forms:[]}, action) {
    console.log("received action"+action.type)
    switch (action.type) {
  
      case GET_FORMS:
        console.log("Action:"+action);
        return Object.assign({},state,{
         forms:action.formlist
        })
  
     default:
      return state
   }
  }
  </code></pre>
  
  <p>App.js</p>
  
  <pre><code>import React, { Component, PropTypes } from 'react'
  import ReactDOM from 'react-dom';
  import { bindActionCreators } from 'redux'
  import { connect } from 'react-redux'
  import auth from '../auth'
  import FormTable from '../components/FormTable'
  import * as FormActions from '../actions/actions'
  
  
  class App extends Component {
  
   constructor(props) {
    super(props);
    this.state = {forms: []};
   }
  
   componentDidMount() {
    // for some reason if i write this.props.actions.getForms () i get an error
    // Uncaught Error: Actions must be plain objects. Use custom middleware for 
    // async actions.
    FormActions.getForms();
   }
  
   render() {
    const {forms,actions} = this.props
    console.log(forms);
    return (
      &lt;FormTable results={forms} actions = {actions} /&gt; 
    )
   }
  }
  
  App.PropTypes = {
    forms: PropTypes.array.isRequired
  }
  
  function mapStateToProps() {
   const {
    forms:forms
   } = {forms:[]}
  
   return {
    forms
   }
  }
  
  function mapDispatchToProps(dispatch) {
   return {
    actions: bindActionCreators(FormActions, dispatch)
   }
  }
  
  export default connect(
    mapStateToProps,
    mapDispatchToProps
  )(App)
  </code></pre>