From 1d47ca80f6819fa6569eb06b684914b0d88a4b9e Mon Sep 17 00:00:00 2001 From: Kirill Barsukov Date: Sat, 28 Sep 2024 10:31:38 -0400 Subject: [PATCH] added a basic schema --- docs/intent-button.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/docs/intent-button.md b/docs/intent-button.md index 5fb6bd08..f5ad7091 100644 --- a/docs/intent-button.md +++ b/docs/intent-button.md @@ -136,9 +136,21 @@ To manipulate a field list, you can use the **insert**, **remove** and **reorder ```tsx import { useForm } from '@conform-to/react'; +import { parseWithZod } from "@conform-to/zod"; +import { z } from "zod"; + +const todosSchema = z.object({ + title: z.string(), + tasks: z.array(z.string()), +}); export default function Tasks() { - const [form, fields] = useForm(); + const [form, fields] = useForm({ + onValidate({ formData }) { + return parseWithZod(formData, { schema: todosSchema }); + }, + shouldValidate: "onBlur", + }); const tasks = fields.tasks.getFieldList(); return (