2016-05-05 4 views
0

Ich bin neu in Redux so versuchen, dies in meiner App in Gang zu bringen - ich die folgende Fehlermeldung erhalten:Redux Setup | ReagierenJS | ES6

Uncaught TypeError: (0 , _index2.default) is not a function 

Es gibt nicht einen ganzen Haufen von Dokumentation, wie aus Redux Setup dorthin zu gelangen. Ich kenne diese Seite: http://redux.js.org/ aber das war nicht viel Hilfe.

Nicht sicher, was ich vermisse?

Hier meine Dateien sind:

Client.js

//Client entry 

//Application modules 
import React from "react"; 
import { Provider } from "react-redux"; 

import ReactDOM from "react-dom"; 
import { Router, Route, IndexRoute, hashHistory } from "react-router"; 
import { createStore } from "redux"; 
import reducers from "./reducers/index"; 



//Application views 
import Layout from "./components/Layout"; 
import ForgotPassword from "./containers/ForgotPassword/ForgotPassword"; 
import Login from "./containers/Login/Login"; 
import Register from "./containers/Register/Register"; 


const store = createStore(reducers()); 

const app = document.getElementById('app'); 

ReactDOM.render(
    <Provider store={store}> 
     <Router history={hashHistory}> 
      <Route path="/" component={Layout} /> 
      <Route path="/login" component={Login} /> 
      <Route path="/register" component={Register} /> 
      <Route path="/forgotpassword" component={ForgotPassword} /> 
     </Router> 
    </Provider>, 
app); 

export default store; 

Layout.js

import React, {Component} from "react"; 

import Footer from "./Footer/Footer"; 
import Header from "./Header/Header"; 

import Login from "../containers/Login/Login"; 
import Register from "../containers/Register/Register"; 
import ForgotPassword from "../containers/ForgotPassword/ForgotPassword"; 

export default class Layout extends Component { 
    constructor() { 
    super(); 
    } 

    render() { 
    return ( 
     <div> 
     <Header /> 
     <Login /> 
     <Register /> 
     <ForgotPassword /> 
     <Footer /> 
     </div> 
    ); 
    } 
} 

Reduzierungen/index.js

import { createStore, combineReducers } from "redux"; 
import { reducer as formReducer } from "redux-form"; 

const reducers = { 
    form: formReducer 
} 

const reducer = combineReducers(reducers); 
const store = createStore(reducer); 

export default reducers; 

Antwort

1

Innerhalb Reducers/index.js, ändern zu export default store;, exportieren Sie das Objekt , das Sie dann als Funktion in Client.js ausführen möchten.

+0

Warum 'createStore' zweimal? Warum nicht 'Export default reducer'? – conor909