【问题标题】:Different inputs with the shared name in React Hook FormReact Hook Form中具有共享名称的不同输入
【发布时间】:2020-10-20 09:29:10
【问题描述】:

下面的屏幕截图包含项目的列表和所选项目的页面

当我点击列表中的任何项目时,页面会更新。

对象由id、fullName、username组成。

页面内有一个文本输入,名称为“用户名”,用于所有项目。问题是当我选择不同的项目时文本输入不会改变。我想为不同的项目提供不同的文本输入。我们如何在 React Hook Form 中处理它?

项目链接: https://codesandbox.io/s/busy-smoke-7zgew

【问题讨论】:

  • 你能提供一个codeandbox吗?
  • @Bill,我已将链接添加到项目中。请看一下!
  • 我认为点击列表的那一刻,您需要使用 setValue 来更新输入。 react-hook-form.com/api#setValue
  • @Bill,它奏效了。我添加了 useEffect 来触发 id 更改。它是性能友好的解决方案吗?
  • 是的。如果您的输入是通过 ref 注册的,它不应该触发重新渲染。

标签: reactjs forms react-hooks react-hook-form


【解决方案1】:

将此添加到 页面 解决了这个问题。

useEffect(() => {
  setValue("username", profile.username);
}, [id]);

【讨论】:

    猜你喜欢
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 2022-06-13
    • 2022-07-30
    • 2011-07-19
    • 2022-10-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多