如何解决 TypeError: path.split is not a function

时间:2021-04-06 14:36:05

标签: reactjs typeerror react-hook-form

现在我使用 react-hook-form 进行登录验证。

但是,TypeError: path.split is not a function 错误继续发生时 ref={register} 在输入标签中输入。

import React from 'react';
import {useForm} from "react-hook-form";
import './Auth.css';

export default function Register() {

    const {register, errors, watch} = useForm();

    return (
        <div>
            <form>
                <label>Email</label>
                <input type="email" name="email" ref={register({ required: true})} />
                <label>Password</label>
                <input type="password" />
                <label>Password Confirm</label>
                <input type="password"/>
                <input type="submit" />
            </form>
        </div>
    );
}

即使我复制粘贴了示例代码,也会出现同样的错误,请问如何解决?

错误代码如下。 enter image description here

2 个答案:

答案 0 :(得分:6)

我认为您将 React Hook Form v7 与 v6 syntqx 结合使用,这就是您收到该错误的原因。

这里有一个类似的问题:https://github.com/react-hook-form/react-hook-form/issues/4595

对于 v7,您必须像这样使用 register

<input type="email" {...register('email', { required: true })} />

要么安装 v6,要么安装 v6 文档:https://react-hook-form.com/v6/api#register

答案 1 :(得分:0)

试试这个:

<input placeholder="To" type="email" {...register('email', { required: true })} />