javascript - 我可以使用 useRef 钩子(Hook)来清空输入值吗?

标签 javascript reactjs use-ref

点击提交按钮时我需要清空输入字段

我想知道当控制多个useRefs作为一个整体时如何清空输入

inputRef.current.value = ""

这是代码

function SignUp() {
  const ref = useRef();

  const onChange = (e) => {
    ref.current = { ...ref.current, [e.target.name]: e.target.value };
  };

  const handleSignUpClick = () => {
    // I Need To Empty input value here
  };

  return (
      <form onSubmit={(e) => e.preventDefault()}>
        <input
          type="text"
          name="email"
          onChange={onChange}
        />
        <input
          type="password"
          name="password"
          onChange={onChange}
        />

        <button
          onClick={handleSignUpClick}
        >
          Sign up
        </button>
      </form>
  
  );
}

export default SignUp;

最佳答案

更好的方法是使用 useState。

function SignUp() {
  const ref = useRef();

  const onChange = (e) => {
    ref.current = { ...ref.current, [e.target.name]: e.target.value };
  };

  const handleSignUpClick = (e) => {
    e.preventDefault();
    // I Need To Empty input value here
    e.target.reset();
  };

  return (
      <form onSubmit={handleSignUpClick}>
      <input type="text" name="email" onChange={onChange} />
      <input type="password" name="password" onChange={onChange} />

      <button>Sign up</button>
    </form>
  
  );
}

export default SignUp;

关于javascript - 我可以使用 useRef 钩子(Hook)来清空输入值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74085357/

相关文章:

javascript - Jquery:迭代一个数组并查找具有特定 id 的节点

javascript - 仅覆盖箭头键滚动事件

javascript - 如何从数组中过滤掉非日语字符?

reactjs - 在React应用程序中接收 "Attempted import error:"

reactjs - 如何在 React with Material-UI 中垂直和水平居中?

javascript - 从 Recharts 的另一个组件获取数据

javascript - 如何使用 react Hook 将 HTML 复制到剪贴板?

javascript - laravel中如何根据所选选项刷新页面

reactjs - React JS 引用 (useRef) : contains is not a function

javascript - react : Setinterval is not stopping even after clearing the timer using clearInterval