reactjs - 将论据传递给行动
问题描述
我正在尝试将对象作为参数传递给用户操作,但我无法在操作中访问它。当我这样做时它只是返回 undefined console.log(dataToSubmit)
。下面是动作方法:
const loginUser = (dataToSubmit) => {
console.log(dataToSubmit)
return (dispatch) => {
dispatch(loginUserRequest)
axios.post('http://localhost:5000/api/user/login' , dataToSubmit)
.then(response => {
if(response.data.loginSuccess){
const user = response.data.user
dispatch(loginUserSuccess(user))
}
else{
console.log('Login attempt failed')
}
})
.catch(error => dispatch(loginUserFailure(error.message)))
}
}
export default loginUser
我在这里传递论点:
const handleSubmit = (event) => {
event.preventDefault();
if (isFormValid(email , password)){
const data = {
email,
password
}
loginUser(data)
}
}
我已经将调度映射到道具:
const mapDispatchToProps = (dispatch) => {
return{
loginUser : () => dispatch(loginUser())
}
}
export default connect(
mapStateToProps,
mapDispatchToProps
)(SignIn)
我是redux的新手。谢谢
解决方案
You need to pass the argument in mapDispatchToProps
const mapDispatchToProps = (dispatch) => {
return{
loginUser : (data) => dispatch(loginUser(data))
}
}
推荐阅读
- email - DKIM 是否验证 smtp/envelope-from 或邮件/标头来自?
- c# - 捆绑不反映变化
- xamarin - Xamarin PortSip VoIP 客户端
- node.js - 节点以错误退出状态 3221225786 结束
- google-drive-api - Colab如何获取现有文件的文件ID
- recommendation-engine - SVD 的建议
- ruby-on-rails - 以单一形式多次创建一个模型
- javascript - 在表中自动加载数据时停止清除数据表搜索输入
- android - 单击项目后,导航抽屉不会启动新活动
- c# - 具有悲观超时策略的 C# Polly 在多个线程上运行缓慢?