我正在研究我的第一个React/Redux项目.一切都很顺利,然后我尝试创造一个新的减速机.我认为这是一个非常简单的,但是当我加载页面时,我收到一个错误"Reducer X在初始化期间返回undefined".跟踪说这发生在combineReducers()中.我发现了几个类似的问题,但他们没有解决问题.
在这个问题上:尽管为initialStore()提供了initialState,为什么我在初始化期间得到"Reducer [...]返回未定义"?
问题是他们在createStore()中使用了initialState,我没有这样做.
在这个问题上:为什么我的Redux减速器认为我的状态未定义?
问题是reducer中缺少默认返回值,我有.
我的减速机代码如下.我在开头有一个console.log(),根本没有被调用.
减速器/ reducer_which_sorter.js
import { SORT_CAMPERS } from '../actions/index';
export default function(state = null, action) {
console.log("action is", action);
switch(action.which) {
case 'recent':
case 'alltime':
return action.which;
break;
default:
return state;
}
return state;
}
Run Code Online (Sandbox Code Playgroud)
减速器/ index.js
import { combineReducers } from 'redux';
import Campers from './reducer_camper_list';
import ActiveSorter from './reducer_which_sorter';
const rootReducer = combineReducers({
campers: Campers,
activeSorter: ActiveSorter
});
export default rootReducer;
Run Code Online (Sandbox Code Playgroud)
一切都很好.webpack没有错误.我有双倍,三倍和四倍检查我的文件路径.我没有看到任何拼写错误.谁能看到我在这里失踪的东西?