Reactjs 反应:我想提交一个表单,并想通过挂钩(useSelector和useDispatch)将数据保存在redux存储中

Reactjs 反应:我想提交一个表单,并想通过挂钩(useSelector和useDispatch)将数据保存在redux存储中,reactjs,redux,react-hooks,store,Reactjs,Redux,React Hooks,Store,反应:我想提交一个表单,并想通过挂钩(useSelector和useDispatch)将数据保存在redux存储中 如果需要其他东西,请告诉我,我会上传 在这个问题上我需要这个帮助 我会很感激的 import React,{useState}来自“React”; 从“react redux”导入{useDispatch}; 进口{ 按钮 形式, FormGroup, 标签, 输入, 集装箱, 上校 }从“反应带”; 导入“/style.scss”; 从“./../store/reducers/

反应:我想提交一个表单,并想通过挂钩(useSelector和useDispatch)将数据保存在redux存储中 如果需要其他东西,请告诉我,我会上传 在这个问题上我需要这个帮助 我会很感激的

import React,{useState}来自“React”;
从“react redux”导入{useDispatch};
进口{
按钮
形式,
FormGroup,
标签,
输入,
集装箱,
上校
}从“反应带”;
导入“/style.scss”;
从“./../store/reducers/registerReducer.js”导入{addUserAction};
常量寄存器=()=>{
const[user,setUser]=useState(“”);
const usedispatch=usedispatch();
const addUser=user=>usedispatch(addUserAction(user));
常量submitHandler=e=>{
e、 预防默认值();
console.log(用户);
如果(user.trim()==“”)返回;
addUser(用户);
};
const onChange=e=>{
//console.log(如target.value);
设置用户(如目标值);
};
返回(
登记
全名
电子邮件
密码
提交
);
};
导出默认寄存器;
////////////////////////////////////////////////////////////////减速器
常量初始状态={
全名:“,
电邮:“,
密码:“
};
函数userRegister(状态=初始状态,操作){
开关(动作类型){
案例“添加用户”:
返回{
…州
};
违约:
返回状态;
}
}
导出默认用户寄存器;
//行动
export const addUserAction=user=>({
类型:“添加用户”,
有效载荷:用户

});您的
用户
状态是一个字符串,并作为字符串更新。但是您正在以对象
用户.fullname
访问它

其次,您提交的redux操作使用的是空用户对象,而不是表单值:

addUser({
全名:“,
电邮:“,
密码:“
});
更改表单以对每个值使用不同的
useState
,或者更好地将当前
user
状态更改为对象。然后改为发送该对象:

const[user,setUser]=useState({
全名:“,
电邮:“,
密码:“
});
const onChange=e=>{
setUser({…user[e.target.name]:e.target.value});
};
addUser(用户);
最后,您没有在减速器中使用有效负载,只是返回状态。通过如下方式返回用户来保存用户:

案例“添加用户”:
返回动作。有效载荷;

您的
用户
状态是一个字符串,并作为字符串更新。但是您正在以对象
用户.fullname
访问它

其次,您提交的redux操作使用的是空用户对象,而不是表单值:

addUser({
全名:“,
电邮:“,
密码:“
});
更改表单以对每个值使用不同的
useState
,或者更好地将当前
user
状态更改为对象。然后改为发送该对象:

const[user,setUser]=useState({
全名:“,
电邮:“,
密码:“
});
const onChange=e=>{
setUser({…user[e.target.name]:e.target.value});
};
addUser(用户);
最后,您没有在减速器中使用有效负载,只是返回状态。通过如下方式返回用户来保存用户:

案例“添加用户”:
返回动作。有效载荷;

我应该在这里输入值的内容


我应该在这里写些什么

<Input
          type="email"
          name="email"
          value={user.email}
          id="email"
          placeholder="myemail@email.com"
          onChange={onChange}
        />