我正在使用Next.js,TypeScript,sanity和tailwindcss。我试图使用react-hook-form,但收到一个错误。
我试过了:
- 将
Post
函数更改为箭头函数 - 将
Post
函数更改为常量函数 - 将
IFormInput
接口更改为类型
这就是错误所在:
23 | formState: { errors },
> 24 | } = useForm<IFormInput>();
| ^
25 |
26 | return (
27 | <main>
这是我在pages文件夹中的代码([slug].tsx):
import { useForm, SubmitHandler } from "react-hook-form";
interface IFormInput {
_id: string;
name: string;
email: string;
comment: string;
}
function Post({ post }: Props) {
const { register, handleSubmit, formState: { errors } } = useForm<IFormInput>();
return (
<form>
<input {...register("_id")} type="hidden" name="_id" value={post._id} />
<input {...register("name", { required: true })} type="text"/>
<input {...register("email", { required: true })} type="text" />
<textarea {...register("comment", { required: true })} />
{errors.name && (<span>- The Name Field is required</span>)}
{errors.comment && ( <span>- The Comment Field is required</span>)}
{errors.email && ( <span>- The Email Field is required</span>)}
<input type="submit" />
</form>
);
}
如有任何协助,不胜感激。
2条答案
按热度按时间jgzswidk1#
我有同样的错误BC我没有安装'React Hook Form'在正确的文件夹中,请确保它在您的package.json中
g6ll5ycj2#
1.首先,查看您的
package.json
文件,以确保每个使用的库都以"dependencies"
或devDependencies
列出。如果没有,则单独安装它们。1.第二,确保你的
node.js
版本没有比上一个recommended版本更上级。如果没有降级,那么你可以使用npm
中的n包: