Démarrage rapide Next.js
Ajoutez un formulaire de contact fonctionnel à votre application Next.js. Vous écrivez le formulaire, et Formerie le vérifie, le conserve et vous l’envoie par courriel.
Installer
npm install @formerie/nextpnpm add @formerie/nextyarn add @formerie/nextbun add @formerie/nextAjouter le formulaire
Enregistrez ceci dans app/contact-form.tsx, puis affichez <ContactForm /> dans n’importe quelle page.
"use client";
import { useFormerieSubmit } from "@formerie/next";
export function ContactForm() {
const { submit, state } = useFormerieSubmit({ workspace: "acme", form: "contact" });
return (
<form
method="post"
onSubmit={(event) => {
event.preventDefault();
submit({ fields: Object.fromEntries(new FormData(event.currentTarget)) });
}}
>
<input name="name" placeholder="Name" required />
<input name="email" type="email" placeholder="Email" required />
<textarea name="message" placeholder="Message" required />
<button disabled={state.status === "submitting"}>Send</button>
{state.result?.ok === true && <p>Thanks!</p>}
{state.result?.ok === false && <p>{state.result.error.message}</p>}
</form>
);
}Le name de chaque champ de saisie correspond au champ qu’il remplit dans Formerie.
Configurer le formulaire dans l’application
- Ouvrez app.formerie.com et créez un formulaire nommé Contact. Il vient avec les champs de nom, de courriel et de message que ce code envoie.
- Dans l’onglet Livraison, ajoutez votre adresse courriel, puis choisissez Enregistrer la livraison. Confirmez le courriel que Formerie vous envoie.
- Dans l’onglet Publication, choisissez API seulement et ajoutez l’adresse qu’affiche votre serveur de développement, comme
http://localhost:3000, sous Adresses de vos sites.localhostet127.0.0.1comptent comme deux adresses différentes. Ajoutez l’adresse de votre site en ligne de la même façon au moment de le déployer. - Choisissez Publier le formulaire.
- Dans le code ci-dessus, remplacez
acmepar l’identifiant d’espace de travail affiché dans l’onglet Publication.
Vérifier que c’est arrivé
Lancez votre application, remplissez le formulaire et envoyez-le. « Thanks! » s’affiche dans la page, un texte que vous pouvez changer. Dans l’application Formerie, votre réponse apparaît sous Soumissions, et son courriel sous Livraisons.
Vous voyez une erreur CORS ou NETWORK_ERROR? L’adresse de votre site n’est pas encore dans l’onglet Publication, ou vous n’avez pas republié
depuis que vous l’avez ajoutée. Consultez Dépannage.
À lire ensuite
- Recettes : demandes de soumission, sondages et acheminement par sujet
- Afficher les erreurs de champ et plus encore
- Les Server Actions de Next.js, si le formulaire doit fonctionner sans JavaScript
- SDK JavaScript et API : la référence complète