【问题标题】:Store does not have a valid reducer. Make sure the argument passed to combineReducers is an object whose values are reducers商店没有有效的减速器。确保传递给 combineReducers 的参数是一个其值为 reducers 的对象
【发布时间】:2016-05-05 21:23:13
【问题描述】:

这是我的减速器,效果很好:

    const rootReducer   =   createStoreWithMiddleware(combineReducers({
        companies: companies,
        brands: brands,
        login: login,
        chat: chat,
        banners: banners,
        sessions: sessions,
        settings: settings,
        statistics: statistics
}));

我希望我的系统是模块化的,所以我尝试将其更改为:

    const rootReducer   =   createStoreWithMiddleware(combineReducers({
    chatModule: {
        companies: companies,
        brands: brands,
        login: login,
        chat: chat,
        banners: banners,
        sessions: sessions,
        settings: settings,
        statistics: statistics
    }
}));

然后我在浏览器中收到此错误:

Store does not have a valid reducer. Make sure the argument passed to combineReducers is an object whose values are reducers.

这是整个文件的代码:

    import {combineReducers, createStore, applyMiddleware} from 'redux';
import ReduxPromise from 'redux-promise';
import {login, chat, chatClick, banners, sessions, companies, settings, statistics, brands} from '../actions/actions'

const createStoreWithMiddleware =   applyMiddleware(ReduxPromise)(createStore);

const rootReducer   =   createStoreWithMiddleware(combineReducers({
    chatModule: {
        companies: companies,
        brands: brands,
        login: login,
        chat: chat,
        banners: banners,
        sessions: sessions,
        settings: settings,
        statistics: statistics
    }
}));

export default rootReducer;

公司、品牌、登录等...导出功能...

【问题讨论】:

    标签: reactjs redux react-redux


    【解决方案1】:

    如错误消息中所述,您应该传递给combineReducers 其值为reducers 的对象。您传递了一个对象,其值为 object ({companies: companies,brands: brands, ...})

    combineReducers 返回reducer 本身,所以你可以这样做:

    const rootReducer = createStoreWithMiddleware(combineReducers({
      chatModule: combineReducers({
        companies: companies,
        brands: brands,
        login: login,
        chat: chat,
        banners: banners,
        sessions: sessions,
        settings: settings,
        statistics: statistics
      })
    })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-26
      • 2019-09-17
      • 1970-01-01
      • 2019-07-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多