Ich habe versucht, dem Zod-Verifizierungs-Tutorial in Svelte zu folgen. Ich habe keine Erfahrung damit (schlank), also frage ich mich, wie ich diese Codefunktionalität in einer einfachen React/Next-App replizieren kann? Ich weiß nicht, was ({request}) an die asynchrone Funktion übergeben wird/werden soll.
Sollte dies auch innerhalb von useEffect erfolgen oder nur bei der Formularübermittlung aufgerufen werden?
export const actions = { default: async ({ request }) => { const formData = Object.fromEntries(await request.formData()); console.log('Form Data:', formData); try { const result = registerSchema.parse(formData); console.log('SUCCESS'); console.log(result); } catch (err) { const { fieldErrors: errors } = err.flatten(); const { password, passwordConfirm, ...rest } = formData; return { data: rest, errors }; } };
Hier ist das Repository für dieses Tutorial: https://github.com/huntabyte/sveltekit-form-validation/blob/main/src/routes/%2Bpage.server.js
这就是我所做的:
总的来说,我发现这种方法效果很好,并且易于理解和实施。至于您关于在哪里放置验证代码的问题,我建议在表单提交时调用它,而不是在 useEffect 中调用它。