我正在尝试在我的reactjs应用程序中应用redux。由于这些错误,我无法继续:

reactjs - TypeError:中间件不是函数-LMLPHP

reactjs - TypeError:中间件不是函数-LMLPHP

我确定我已经安装了所需的所有依赖项。这是我的package.json的相关部分

"dependencies": {
   "react-redux": "^5.0.6",
   "redux": "^3.7.2",
   "redux-logger": "^3.0.6",
   "redux-promise": "^0.5.3",
   "redux-thunk": "^2.2.0",
}

这是实现redux的index.js的一部分
import { createStore, applyMiddleware } from 'redux';
import { Provider } from 'react-redux';
import thunkMiddleware from 'redux-thunk';
import createLogger from 'redux-logger';
import reducers from './reducers';

const logger = createLogger();
const store = createStore(reducers,
    applyMiddleware(
        thunkMiddleware, logger
    )
)

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

最佳答案

根据docs,您正在混合使用redux-logger
您要么需要导入特定的createLogger函数

import { createLogger } from 'redux-logger'

const logger = createLogger({
  // ...options
});

或使用默认导入
import logger from 'redux-logger'

然后你的代码应该没问题
const store = createStore(
  reducers,
  applyMiddleware(thunkMiddleware, logger)
)

关于reactjs - TypeError:中间件不是函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46869671/

10-09 23:16
查看更多