繁体   English   中英

Redux-form matchDispatchToProps无法正常工作

[英]Redux-Form matchDispatchToProps not working

当我尝试将动作传递给reduxForm调用时,它不会将动作映射到道具。 我收到此错误:

成像错误 我在下面包括了错误重现的步骤。 非常感谢您的帮助!

我的带有Redux-thunk的Test Action Creator

export function signUpUser({ firstName, lastName, email, password, passwordConfirm }) {
  console.log("action: ", firstName)
  console.log("action: ", lastName)
  console.log("action: ", email)
  console.log("action: ", password)
  console.log("action: ", passwordConfirm)
  return function(dispatch) {
        dispatch({ 
      type: AUTH_USER, 
      payload: response.data.message 
    });
    }
}

VSCode方法签名助手

(alias) reduxForm(config: ReduxFormConfig, mapStateToProps?: MapStateToProps, mapDispatchToProps?: MapDispatchToPropsFunction | MapDispatchToPropsObject): ClassDecorator
import reduxForm

我对reduxForm的呼叫

import { Field, reduxForm } from 'redux-form';
...
export default reduxForm({
  form: 'authentication'
}, null, signUpUser)(Login);

我在React.Component中的动作用法

handleFormSubmit(values) {
    this.validateFields(values);

    console.log("works")
    if (this.state.errors.email.exists && this.state.errors.email.valid && this.state.errors.password.match) {
      console.log("works2")
      this.props.signUpUser(values);
    }
  }

如果@Jyothi的注释对您不起作用,则您可能正在使用redux-form v6。 在版本6中,您必须使用自己的redux-form connect离子,如下所示。

class MyForm extends Component {}
MyForm = reduxForm(config)(MyForm)
MyForm = connect(mapStateToProps, mapDispatchToProps)(MyForm)
export default MyForm

这是来自redux-form文档的示例

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM