tracking-form-status

📁 djankies/claude-configs 📅 9 days ago
1
总安装量
1
周安装量
#52751
全站排名
安装命令
npx skills add https://github.com/djankies/claude-configs --skill tracking-form-status

Agent 安装分布

replit 1
junie 1
windsurf 1
trae 1
qoder 1
opencode 1

Skill 文档

Form Status Tracking with useFormStatus

useFormStatus provides status info about parent form submissions.

Basic Usage

MUST be called inside a form component:

import { useFormStatus } from 'react-dom';

function SubmitButton() {
  const { pending, data, method, action } = useFormStatus();

  return (
    <button type="submit" disabled={pending}>
      {pending ? 'Submitting...' : 'Submit'}
    </button>
  );
}

function MyForm() {
  async function handleSubmit(formData) {
    'use server';
    await saveData(formData);
  }

  return (
    <form action={handleSubmit}>
      <input name="email" />
      <SubmitButton />
    </form>
  );
}

Return Values

  • pending (boolean): Whether form is submitting
  • data (FormData | null): Data being submitted
  • method (string): HTTP method (‘get’ or ‘post’)
  • action (function | null): Action function

Critical Requirement

❌ Wrong – called at form level:

function MyForm() {
  const { pending } = useFormStatus();
  return <form>...</form>;
}

✅ Correct – called inside form:

function MyForm() {
  return (
    <form>
      <SubmitButton />
    </form>
  );
}

function SubmitButton() {
  const { pending } = useFormStatus();
  return <button disabled={pending}>Submit</button>;
}

For comprehensive useFormStatus documentation, see: research/react-19-comprehensive.md lines 312-355.