预计 Redux 创建减速器
Redux create reducer expected
早上好,
在使用 redux 时出现以下错误,我已经配置了 reducer 和操作什么,我应该修复什么?
错误:预计减速器是一个函数。
代码:
import {createStore} from "redux";
const initalUser={
IdUtente: 0
};
const store=createStore(
initalUser
)
function userset(state=initalUser,action,value){
switch(action){
case "Login":
state=value;
return state;
default:
return state;
}
}
export function userReducer(idUtente){
store.userset(initalUser,"Login",idUtente);
}
export function getUser(){
return store.getState();
}
老实说,您在这里所做的几乎所有事情都是不正确的。
createStore
需要用reducer调用,不是初始状态。 userset
并没有神奇地变成商店的 属性,你把它写得更像是一个化简器而不是动作创建者——但它不是一个有效的化简器(它只接受两个参数)而且你在该代码中的任何地方都看不到已调度的操作。
所以,这需要看起来像
import {createStore} from "redux";
const initalUser={
IdUtente: 0
};
const store=createStore(
userReducer
)
function userReducer(state=initalUser,action){
switch(action.type){
case "Login":
return action.payload;
default:
return state;
}
}
export function userSet(idUtente){
store.dispatch({ type: "Login", payload: idUtente });
}
export function getUser(){
return store.getState();
}
即使那样也不是非常典型的 redux 代码。
除此之外:这是一种非常过时的 redux 风格,我们不建议再教授或学习它。
请忽略你现在正在学习的任何教程,转到 https://redux.js.org/tutorials/index 上的官方 redux 教程并从头到尾学习它们(它们从旧式 redux 开始解释基础知识然后教你modern redux,看起来很不一样)。
早上好, 在使用 redux 时出现以下错误,我已经配置了 reducer 和操作什么,我应该修复什么?
错误:预计减速器是一个函数。
代码:
import {createStore} from "redux";
const initalUser={
IdUtente: 0
};
const store=createStore(
initalUser
)
function userset(state=initalUser,action,value){
switch(action){
case "Login":
state=value;
return state;
default:
return state;
}
}
export function userReducer(idUtente){
store.userset(initalUser,"Login",idUtente);
}
export function getUser(){
return store.getState();
}
老实说,您在这里所做的几乎所有事情都是不正确的。
createStore
需要用reducer调用,不是初始状态。 userset
并没有神奇地变成商店的 属性,你把它写得更像是一个化简器而不是动作创建者——但它不是一个有效的化简器(它只接受两个参数)而且你在该代码中的任何地方都看不到已调度的操作。
所以,这需要看起来像
import {createStore} from "redux";
const initalUser={
IdUtente: 0
};
const store=createStore(
userReducer
)
function userReducer(state=initalUser,action){
switch(action.type){
case "Login":
return action.payload;
default:
return state;
}
}
export function userSet(idUtente){
store.dispatch({ type: "Login", payload: idUtente });
}
export function getUser(){
return store.getState();
}
即使那样也不是非常典型的 redux 代码。
除此之外:这是一种非常过时的 redux 风格,我们不建议再教授或学习它。
请忽略你现在正在学习的任何教程,转到 https://redux.js.org/tutorials/index 上的官方 redux 教程并从头到尾学习它们(它们从旧式 redux 开始解释基础知识然后教你modern redux,看起来很不一样)。