Rechercher

PythonReactSEOPDF
GitHub Skill

nextjs-server-actions

Mutations, Form handling, and RPC-style calls.

HoangNguyen0403☆ 143 Étoiles du dépôt48 Forks du dépôt

Installation

Suivez les instructions du dépôt pour votre agent. Consultez les fichiers et dépendances avant l’installation.

Voir la source ↗Guides

Instructions

Server Actions

Priority: P1 (HIGH)

Handle form submissions and mutations without creating API endpoints.

Implementation

  • Directive: Add 'use server' at the top of an async function.
  • Usage: Pass to action prop of <form> or invoke from event handlers.
// actions.ts
'use server';
export async function createPost(formData: FormData) {
  const title = formData.get('title');
  await db.post.create({ title });
  revalidatePath('/posts'); // Refresh UI
}

Client Invocation

  • Form: <form action={createPost}> (Progressive enhancements work without JS).
  • Event Handler: onClick={() => createPost(data)}.
  • Pending State: Use useFormStatus hook (must be inside a component rendered within the form).

Validation & Error Handling

  • Zod: Always validate FormData or arguments on the server.
  • Return Values: Return serializable objects { success: boolean, error?: string } to handle feedback on Client.

Security

  • Authentication: Check auth() (e.g., NextAuth) session inside every Server Action.
  • Closure: Be careful with closures in Server Actions defined inside Components (they capture context encrypted). Prefer defining actions in separate files (actions.ts).

Exemples

Consultez les exemples du dépôt source.

Voir la source ↗

Historique source

Date d’indexation
2026-01-20
Mise à jour de l’index
2026-01-26
Branch
main

Les dates concernent ce répertoire. Consultez le dépôt pour l’historique du code.

GitHub ↗

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!