Я пытаюсь использовать clientAction () для проверки на стороне клиента.
Код: Выделить всё
export async function clientAction({ request }: Route.ClientActionArgs) {
const formData = await request.formData();
const formValues = {
name: formData.get('name')
};
const validate = formSchema.safeParse(formValues);
if (!validate.success) {
return { errors: z.flattenError(validate.error) };
}
// { success: true, data: ... }
// return ???
}
// server-side action()
export async function action({ request }: Route.ActionArgs) {
const formData = await request.formData();
const formValues = {
name: formData.get('name'),
};
const validate = formSchema.safeParse(formValues);
if (!validate.success) {
return { errors: z.flattenError(validate.error) };
}
await db.insert(table).values(formValues);
return redirect(href('/home'));
}
Подробнее здесь: https://stackoverflow.com/questions/796 ... -router-v7