用途:该技能帮助编写新表单,并把现有表单重构为使用 react-hook-form,遵循项目最佳实践。适用场景包括从零创建表单组件、将已有表单转换为 react-hook-form、为表单添加校验,以及实现嵌套表单、字段数组、多步骤等复杂模式。
主要能力与约定:始终使用 Zod 定义 schema,并通过 zodResolver 集成;优先使用 useController 而非 Controller,以获得更好的可组合性;原生输入默认采用非受控方式,用 register 注册,仅对第三方受控组件使用 Controller/useController;用户交互使用 field.onChange,程序化更新使用 setValue;必须为所有字段提供 defaultValues;只监听具体字段,避免无参数 watch();嵌套字段使用点号表示法;动态列表使用 useFieldArray;提交使用 handleSubmit,错误通过 formState.errors 展示;重置使用 form.reset;多步骤表单可用 trigger() 校验指定字段。
关键限制:不要在 useEffect 依赖中包含 useController 返回的 field 对象,同时又在 effect 内调用 field.onChange(),否则会造成无限循环;effect 中的程序化更新应使用稳定的 setValue。重构时需按清单逐项替换受控输入、手动状态管理、提交处理与错误展示,并移除表单值上不必要的 useState。
资料未提供该技能的安装命令、收费方式、支持平台或具体效果数据。