我对redux / react有所了解,但我的reducer却有问题:
const reducer = (state = 0, action) => {
switch (action.type) {
case "INCREMENT":
return state++;
default:
return state;
}
};
尝试将其注入我的商店:
const store = createStore(reducer);
如何避免此错误?
答案 0 :(得分:3)
感谢沙盒!
执行function reducer(state = 0, action) {
switch (action.type) {
case "INCREMENT":
return state++;
default:
return state;
}
}
时未定义您的“ reducer”变量。 1)在使用前定义它,或2)通过函数声明定义它:
store.subscribe(App);
这导致它被“吊起”(请参阅“ Function Declaration Hoisting”)。
在那之后,您会发现收到后续错误:
期望侦听器为函数。
在App
上。这是因为没有声明了类声明(请参见“ Hoisting”)。因此,您需要在store.subscribe(App);
之前添加{{1}}的类声明。