almessadi.
Retour à l'index

Les actions serveur Next.js sont excellentes pour les mutations liées à l'interface utilisateur_

Les actions serveur réduisent le code boilerplate pour les flux de formulaires et de mutations dans l'App Router, mais elles ne sont pas une raison pour supprimer chaque contrat API explicite.

Publié2 mars 2025
Temps de lecture4 min read

Les actions serveur sont particulièrement utiles lorsque la mutation est étroitement liée à la route qui rend l'interface utilisateur. Dans ce cas, elles éliminent beaucoup de code de liaison qui existait uniquement pour acheminer les données du formulaire dans un gestionnaire de route et en sortir.

C'est un véritable gain de productivité.

Où Elles Fonctionnent le Mieux

Les mutations locales à la route sont le point idéal :

  • formulaires de paramètres
  • mises à jour de profil
  • commutateurs administratifs
  • actions de gestion de contenu

Une action typique est petite et directe :

"use server";

export async function updateProfile(formData: FormData) {
  const name = formData.get("name") as string;
  await db.user.update({ where: { id: userId }, data: { name } });
}

Cela représente moins de code boilerplate qu'une couche API séparée pour chaque petit formulaire.

Ce Qu'elles Ne Remplacent Pas

Les actions serveur ne sont pas une raison pour supprimer les contrats explicites partout. Les API publiques, les intégrations, les clients mobiles et la communication de service à service bénéficient toujours de frontières bien définies.

C'est la véritable distinction architecturale :

  • mutations proches de l'interface utilisateur : les actions serveur peuvent être excellentes
  • contrats inter-équipes ou inter-clients : les API explicites ont toujours l'avantage

Règle Améliorée

Utilisez les actions serveur pour simplifier les mutations qui sont étroitement couplées à une interface utilisateur Next.js App Router. Gardez des frontières API explicites lorsque les consommateurs, la propriété ou la réutilisation s'étendent au-delà de cette route.

Cela vous donne un gain ergonomique sans prétendre que chaque préoccupation backend a disparu.

Lectures Complémentaires