如何在Redux调度中访问表单值?

时间:2018-03-14 21:32:25

标签: react-redux redux-saga

我有以下表单组件:

export class LoginPage extends React.PureComponent {
  render() {
    return (
      <div>
        <Form onSubmit={this.props.onSubmitForm}>
          <Input id="username" type="text" value={this.props.username} />
          <button type="submit">Submit</button>
        </Form>
      </div>
    );
  }
}

在组件之后我有一个mapDispatchToProps函数:

export function mapDispatchToProps(dispatch) {
  return {
    onSubmitForm: (evt) => {
      // I need to access the `username` property here to pass it as argument.
      dispatch(postUsername(username));
    },
  };
}

我需要访问username函数中的mapDispatchToProps。 最简单的方法是什么?我不需要在此步骤中存储username 谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用event.target.username.value属性,因此您的代码应如下所示:

export function mapDispatchToProps(dispatch) {
  return {
    onSubmitForm: (evt) => {
      // I need to access the `username` property here to pass it as argument.
      dispatch(postUsername(evt.target.username.value));
    },
  };
}

这样做你应该有用户名值。