reactjs - Redux 期望 reducer 是一个函数

标签 reactjs redux react-redux redux-devtools

Redux 正在抛出我:

Error: Expected the reducer to be a function. at lines

来自索引:

const { store } = configureStore();

来自configureStore:

const store = createStore(rootReducer, initialState, devToolsEnhancer())

index.js

import React from 'react';
import { render } from 'react-dom';
import Root from './Root';
import './index.css';
import App from './whitesheet-components/App';
import registerServiceWorker from './registerServiceWorker';
import configureStore from './store/configureStore';

const { store } = configureStore();
const MOUNT_NODE = document.getElementById('root');

const load = Component =>
  render(
    <App>
      <Component store={store} />
    </App>,
    MOUNT_NODE,
  );

load(Root);

registerServiceWorker();

configureStore.js

import { createStore } from 'redux';
import { devToolsEnhancer } from 'redux-devtools-extension';
import rootReducer from './rootReducer';

const isDevelopment = process.env.NODE_ENV !== 'production';
export default function configureStore(initialState = {}) {
  const store = createStore(rootReducer, initialState, devToolsEnhancer());

  if (isDevelopment && module.hot) {
    // Enable Webpack hot module replacement for reducers
    module.hot.accept('./rootReducer.js', () => {
      const nextReducer = require('./rootReducer').default; // eslint-disable-line global-require
      store.replaceReducer(nextReducer);
    });
  }

  return { store };
}

rootReducer

import mockReducer from './mockReducer';

export default { mockReducer };

模拟Reducer

export default function reducer(state = { hola: 'as' }, { type }) {
  switch (type) {
    default:
      return state;
  }
}

找不到错误。第一次自己创建一个带有 devtools 插件支持的 redux store

最佳答案

看起来您正在导出一个对象而不是根 reducer 中的函数。

根 reducer

import mockReducer from './mockReducer';

// export default { mockReducer };
export default mockReducer;

关于reactjs - Redux 期望 reducer 是一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50241909/

相关文章:

javascript - Redux 中间件无限循环?

javascript - Redux 中的选择器 - React 组件了解 redux 状态意味着什么?

reactjs - React 应用程序中的 Modernizr.flexbox 返回 'undefined'

javascript - 在不导入的情况下导出组件时出错

reactjs - react /Mocha 测试 : can't find imported components

react-native - 什么时候不应该在 React-Native 中使用 Redux?

reactjs - 在mapStateToProps之后接下来会调用什么

json - 如何将 redux 存储对象保存到外部 JSON 文件..?

javascript - 无法触发 Drum Machine 项目中的元素 (React)

javascript - 异步调用不评估 react 中的条件