2017-07-19 155 views
1

我已經開始反應,正在嘗試一些東西。但我不斷地「從這裏是我的演示配置文件未捕獲的類型錯誤:(0,_reactRedux.combineReducers)不是函數

import React from 'react' 
import { render } from 'react-dom' 
import { createStore, applyMiddleware,compose } from 'redux' 
import { Provider } from 'react-redux' 

import createLogger from 'redux-logger' 
import thunk from 'redux-thunk' 

import App from './containers/App' 
import promise from "redux-promise-middleware" 
import logger from "redux-logger" 

import reducer from "./reducers" 

const middleware = applyMiddleware(promise(), thunk, logger()) 
const store= createStore(reducer,middleware) 
render(
    <Provider store={store}> 
    <App /> 
    </Provider>, 
    document.getElementById('root') 
) 

減速器這個index.js 進口{} combineReducers‘反應 - 終極版’ 導入用戶」 ./UserReducer」

得到錯誤sating是 "Uncaught TypeError: (0 , _reactRedux.combineReducers) is not a function
export default combineReducers({ 
    users, 

    } 
) 

用戶reducer.js

export default function reducer(state={users:[]},action){ 
    // console.log("inside reducer") 
    switch(action.type){ 
     case "FETCH_USERS":{ 
      console.log("inside reducer",{...state}) 
      return {...state,users:action.payload} 
     } 
    } 
} 

回答

3

combineReducers由 '終極版' 帕茨卡提供ge,而不是'react-redux'。

所以: import { combineReducers } from 'redux' 應該修復它

1

如何改變這個

export default combineReducers({ 
    users, 

    } 
) 

對此

import { combineReducers } from 'redux' 
import users from './users' 

const someApp = combineReducers({ 
    users 
}) 

export default someApp 

而在app.js或者,你把你的路線index.js導入。像這樣。

import React from 'react' 
import { render } from 'react-dom' 
import { Provider } from 'react-redux' 
import { createStore } from 'redux' 
import someApp from './reducers' 
import App from './components/App' 

let store = createStore(someApp) 

render(
    <Provider store={store}> 
    <App /> 
    </Provider>, 
    document.getElementById('root') 
) 
+0

它是如何產生影響的,你能解釋一下嗎? –

相關問題