react redux applyMiddleware不是一个函数

时间:2017-07-24 12:51:53

标签: javascript reactjs ecmascript-6 redux

我自己的代码中没有发现任何缺陷,我收到错误

  

未捕获的TypeError:(0,_reactRedux.applyMiddleware)不是   功能

import { applyMiddleware, createStore } from 'react-redux'
import { promiseMiddleware } from './middleware'

const defaultState = {
    appName: 'conduit',
}

const reducer = (state = defaultState, action) => {
    switch(action.type) {
        case 'HOME_PAGE_LOADED':
            return { ...state, articles: action.payload.articles }
    }
    return state
}

const middleware = applyMiddleware(promiseMiddleware)

const store = createStore(reducer, middleware)

export default store

有任何疑问是什么问题?

2 个答案:

答案 0 :(得分:2)

你的进口混乱了。 createStoreapplyMiddleware是Redux主程序包的一部分,而不是React-Redux。你需要:

import {createStore, applyMiddleware} from "redux";

答案 1 :(得分:-1)

您需要像这样调用promise中间件

const middleware = applyMiddleware(promiseMiddleware())

即 - 在promiseMiddleware文本之后使用函数括号。

请参阅此处的文档 -
enter image description here