javascript - 当 reducer 为空时,Store 没有有效的 reducer

标签 javascript reactjs react-redux

我正在使用 https://github.com/stylesuxx/generator-react-webpack-redux 中的生成器。开发进展顺利,只是浏览器控制台出现错误

warning.js:10 Store 没有有效的 reducer 。确保传递给combineReducers的参数是一个值为reducers的对象。

在reduce文件的index.js中,代码如下:

import { combineReducers } from 'redux';

const reducers = {};
const combined = combineReducers(reducers);
module.exports = combined;

stores文件中的index.js中,代码如下:

import { createStore } from 'redux';
import reducers from '../reducers';

function reduxStore(initialState) {
  const store = createStore(reducers, initialState,
    window.devToolsExtension && window.devToolsExtension());

  if (module.hot) {
    // Enable Webpack hot module replacement for reducers
    module.hot.accept('../reducers', () => {
      // We need to require for hot reloading to work properly.
      const nextReducer = require('../reducers');  // eslint-disable-line global-require

      store.replaceReducer(nextReducer);
    });
  }

  return store;
}

export default reduxStore;

我在当前的开发中没有使用 redux,但我使用生成器进行配置以供将来规划。知道如何像上面的代码一样使 reducer 为空const reducers = {};而不触发任何警告吗?

最佳答案

您需要的是一个有效的 reducer ,如错误所示。 如果您想保留样板,您可以尝试以下操作,或者

const reducers = { somename: () => {} };
const combined = combineReducers(reducers);
module.exports = combined;

或者尝试

module.exports = () => {};

这将确保返回有效的 reducer 函数。因为你没有使用 redux 这不会是一个问题。

关于javascript - 当 reducer 为空时,Store 没有有效的 reducer ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46860998/

相关文章:

javascript - JQuery 和 Chrome 扩展

javascript - Laravel 表单与 jquery 仅显示纯文本

javascript - 切换 ui 选项卡时警告用户

reactjs - 在react-redux应用程序中需要什么mapDispatchToProps?

javascript - Visual Studio 2015 中的此安装不支持该项目类型

javascript - 如何修复 jquery 中的 ajax xhr 错误

javascript - React.js 返回简单的链接列表

javascript - Undefined 不是一个对象(评估 'this. state.input' )

javascript - React-redux 检查触发了哪个操作

javascript - 重定向后的 React-router-redux setState 警告