reactjs - 类型错误 : middleware is not a function

标签 reactjs redux react-redux redux-thunk

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

enter image description here

enter image description here

我确信我已经安装了我需要的所有依赖项。这是我的 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",
}

这是我的 index.js 中实现 redux 的部分

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 - 类型错误 : middleware is not a function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46869671/

相关文章:

reactjs - 在 React Native 中流式传输音频记录

reactjs - React Jest/ enzyme 测试 : useHistory Hook Breaks Test

javascript - React/Redux - 保存选择值 onChange

javascript - 从 React 的事件处理程序中删除动态 DOM 节点的正确方法是什么?

javascript - 自定义React组件(react-hook)不重新渲染

reactjs - redux 状态更新后 ComponentDidMount 没有被调用?

reactjs - 分派(dispatch)操作是否总是会导致应用程序状态发生变化?

firebase - 将 firebase 与 redux-saga 连接的正确方法是什么?

reactjs - 如何将 Redux DevTools 扩展添加到我的 React-Redux 商店?

javascript - 每次操作后 Redux Store 都会被清除