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

React Hook Form数字FieldArray字段名TypeScript类型错误求助

解决react-hook-form FieldArray的Type 'string' is not assignable to type 'never'类型错误

问题原因

该错误源于TypeScript类型推断失效,useFieldArray未能正确识别表单字段的类型,错误地将name属性的类型判定为never。

解决方法

  • 显式指定useFieldArray的泛型参数
    调用useFieldArray时,明确传入表单值类型和字段名称的字面量类型,强制TypeScript匹配正确类型:

    const { fields, append } = useFieldArray<FormValues, "numbers">({
      control,
      name: "numbers"
    });
    

    此操作会覆盖错误的自动推断结果,直接解决类型不匹配问题。

  • 确保表单类型定义准确
    检查FormValues的类型声明,保证数组字段的定义清晰无歧义。比如你的代码中:

    type FormValues = {
      numbers: number[];
    };
    

    该定义本身是正确的,但如果类型存在模糊性,也会引发推断失败,需确保类型表述精准。

  • 保证依赖版本兼容
    使用react-hook-form的最新稳定版本(v7.x系列),同时确保TypeScript版本在4.5及以上,避免因版本不兼容导致的类型系统异常。

内容的提问来源于stack exchange,提问作者The Truth

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 18:25:18