javascript 将多个输入值设置为useState对象的属性

h43kikqp  于 2022-10-30  发布在  Java
关注(0)|答案(1)|浏览(149)

我有一个表单要求用户输入不同的内容。我想将用户输入的内容存储在一个useState对象中。
我怎样才能以一种优化的方式做到这一点呢?也就是说,不用为每个输入创建不同的handleChange函数。
第一个

iqxoj9l9

iqxoj9l91#

在输入标记中使用name属性指定不同的输入。

<form>
    <input type="text" name="username" ... />
    <input type="text" name="email" ... />
    <input type="text" name="password" ... />
  </form>

然后,从e.target获取事件的名称和值,以概括更改。

const handleChange = (e) => {
  const { name, value } = e.target; // <--

  setUser((prevUser) => ({
    ...prevUser,
    [name]: value,
  }));

  console.log(user);
};

相关问题