You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在react-hook-form中正确注册嵌套对象属性?

解决React Hook Form嵌套字段注册异常问题

问题根源在于你手动给input设置了name="facebook",覆盖了register("social.facebook")自动生成的name属性。React Hook Form依赖input的name属性关联表单字段,手动指定的name和register的路径不匹配,导致无法正确追踪嵌套字段的输入值,进而触发持续的验证错误,且RHF devtools无法识别字段变化。

解决方法:删除input上手动设置的name="facebook"属性,让register方法自动生成正确的name值(即social.facebook)。修改后的代码如下:

<label htmlFor="facebook">
  Facebook
</label>
<input
  {...register("social.facebook", {
    required: "Facebook required",
  })}
  type="text"
  id="facebook"
/>
<p className="text-red-500">{errors.social?.facebook?.message}</p>

修改后,表单会正确关联嵌套的social.facebook字段,输入内容时RHF devtools将正常响应,验证逻辑也会按预期工作。

内容的提问来源于stack exchange,提问作者Mehmet Emre Topdal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 08:19:56