javascript - <input> 内的 ref={register} 给了我一个 path.split 错误

标签 javascript reactjs

嗨,我正在尝试用 React 制作一个表格,当我放ref={register}里面

<input className="form-control" ref={register} type="text" name="text" id="text" />
我收到以下错误:
TypeError: path.split is not a function
get
src/utils/get.ts:6
有什么建议么?我关注 this guy's优酷教程:
这是我的 return () 语句上面的代码:
 export const CreateTodo = () => {
        const { register, handleSubmit} = useForm(); 
    
        const onSubmit = handleSubmit((data) => {
            alert(JSON.stringify(data));
        });

return ( ... );
}
CodeSandbox link:

最佳答案

react-hook-form v7.0.0(您正在使用的版本)中注册输入的方式已更改。
来自 docs ,

register method is no longer occurred at ref, instead invoke the function itself and spread the props into the input. The function itself will return the following props: onChange, onBlur, name and ref.

- <input ref={register({ required: true })} name="test" />
+ <input {...register('name', { required: true })} /> 
+ <TextInput {...register('name', { required: true })} />
<input
  className="form-control"
  {...register('text')}
  type="text"
/>
Edit on CodeSandbox

关于javascript - &lt;input&gt; 内的 ref={register} 给了我一个 path.split 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66927729/

相关文章:

javascript - 无法使用react和redux在组件中显示数据

javascript - Node.js 连接反斜杠问题

javascript - 如何做异步 JavaScript setter ?

javascript - 如果已经是另一个匹配的一部分,则最短的正则表达式匹配

javascript - 查找对象中的 2 个最高值 - Javascript

javascript - React.js - 从 JSON 模式创建输入元素

javascript - 正确修改 React.js 中的状态数组

javascript - 如何刷新<Redirect to ='/...'> react

javascript - 如何使用 JavaScript 和 Ajax 发送文件和输入字段来发送 php 脚本

javascript - 我的 Gatsby 项目是否存在 react 水合作用问题?