用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/dipro-vn/dipro-ai-boost --skill form-form-state命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
| name | form-form-state |
| description | null |
Category: form · Status: 🟢 Active
Khi quản lý trạng thái form: dirty/touched/isSubmitting, default values, reset.
defaultValues đầy đủ để field controlled từ đầu.formState.isDirty để bật/tắt nút Save, cảnh báo rời trang khi dirty.isSubmitting để tránh double submit.reset(data) để set lại default + clear dirty.isValid/touchedFields để hiện lỗi đúng lúc (sau khi chạm).const { reset, formState: { isDirty, isSubmitting } } = useForm({ defaultValues });
useEffect(() => { if (data) reset(data); }, [data, reset]);
<button type="submit" disabled={!isDirty || isSubmitting}>
{isSubmitting ? 'Đang lưu...' : 'Lưu'}
</button>
Good: reset(data) sau fetch, disable theo isDirty/isSubmitting. Avoid: defaultValues thiếu (uncontrolled→controlled warning), không reset sau load.
基于 SOC 职业分类