无效的减速器

HVenom

原始错误讯息:

商店没有有效的减速器。确保传递给CombineReducers的参数是一个其值为减速器的对象。

这里是:reducer.js

import { combineReducers } from 'redux';
import list_reducer from './reducers/list_reducer.js';


export default combineReducers({
  list_reducer
});

这是:list_reducer.js

const list_reducer = (state = {
  operation: 'success',
  userlist: []
}, action) => {

  switch (action.type) {
    case "FETCH_USER_FULFILLED":
      return {
        ...state,
        userlist: state.userlist.concat(...action.payload)
      }


    case "UPDATE_USER_DETAILS_FULFILLED":
      return {
        ...state,
        userlist: state.userlist.concat(...action.payload)
      }


    case "DELETE_USER_FULFILLED":
      return {
        ...state,
        userlist: state.userlist.concat(...action.payload)
      }


    case "REGISTER_USER_FULFILLED":
      return {
        ...state,
        userlist: state.userlist.concat(...action.payload)
      }


  }

};

export default list_reducer;

这里尝试了一切

我已经在这个错误上停留了很长一段时间了,我很忙,所以我们将不胜感激。

更新:这是来自reducer.js的CONSOLE.LOG(list_reducer)外观

list_reducer

list_reducer

 function list_reducer() {
    var _state$userlist, _state$userlist2, _state$userlist3, _state$userlist4;

    var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : { operation: 'success', userlist: [] };
    var action = arguments[1];


    switch (action.type) {
        case "FETCH_USER_FULFILLED":
            return Object.assign({}, state, {
                userlist: (_state$userlist = state.userlist).concat.apply(_state$userlist, _toConsumableArray(action.payload))
            });

        case "UPDATE_USER_DETAILS_FULFILLED":
            return Object.assign({}, state, {
                userlist: (_state$userlist2 = state.userlist).concat.apply(_state$userlist2, _toConsumableArray(action.payload))
            });

        case "DELETE_USER_FULFILLED":
            return Object.assign({}, state, {
                userlist: (_state$userlist3 = state.userlist).concat.apply(_state$userlist3, _toConsumableArray(action.payload))
            });

        case "REGISTER_USER_FULFILLED":
            return Object.assign({}, state, {
                userlist: (_state$userlist4 = state.userlist).concat.apply(_state$userlist4, _toConsumableArray(action.payload))
            });

        default:
            return Object.assign({}, state);
    }
}
丹尼斯·科瑟

实际上,似乎您使用combineReducers了几次,这可能会产生这种错误。仔细检查您导入的reducer.js文件,并检查它是否传递给另一个combineReducer函数。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章