React不是表单上的setState值



我刚开始使用React,所以我创建了一个带有电子邮件和密码字段的基本表单。

我的问题是:为什么setState没有更新状态?

我读过React的文档,它说当[key]没有硬编码时,我们可以使用[key]:value设置State。

在我的代码下面:

import React, { Component } from "react";
class Form extends Component {
  constructor(props) {
    super(props);
    this.state = {
        mail : "",
        password : ""
    };
  }
  handleInputChange = (event) =>{
   this.setState = ({
       [event.target.name]: event.target.value
   })
  }
  render() {
    return (
      <form>
        <label>
          Email 
          <input
            name="mail"
            type="mail"
            value={this.state.mail}
            onChange={this.handleInputChange}
          />
        </label>
        <br />
        <label>
          Mot de passe 
          <input
            name="password"
            type="password"
            value={this.state.password}
            onChange={this.handleInputChange}
          />
        </label>
        <input type="submit" value="Send" />
      </form>
    );
  }
}
export default Form;

感谢您的帮助

您需要这样定义函数:

chandleInputChange = (event) => {
 this.setState({
  [event.target.name]: event.target.value
})

最新更新