SuperAPI AI 工具集

migrate-frontend-forms

前端与建站

查看项目

更新于 10-16 05:48

技能介绍

用途:该技能用于把 Sentry 旧版表单系统(JsonForm、FormModel)迁移到基于 TanStack 的新表单系统,核心是一份新旧特性映射表与对应迁移写法。

主要能力:给出旧特性到新写法的对照,包括 saveOnBlur: true 对应 AutoSaveForm;confirm 对应 confirm 属性(支持字符串或函数);showHelpInTooltip 对应布局组件的 variant="compact";disabledReason 对应 disabled="reason";extraHelp 对应在布局中渲染 JSX;getData 对应 mutationFn;mapFormErrors 对应 requestErrorToFieldErrors 加 setFieldErrors;saveMessage 与 formatMessageValue 对应 onSuccess;resetOnError 对应 onError;saveOnBlur: false 对应 useScrapsForm 加显式保存按钮;help 对应 hintText;label、required 对应布局与 Zod schema。

使用方式:按映射表逐项改写。自动保存字段用 AutoSaveForm,普通表单用 useScrapsForm。错误处理中,普通表单需在 onSubmit 捕获 RequestError,用 requestErrorToFieldErrors 转换后交给 setFieldErrors;AutoSaveForm 自动处理标准请求错误。类型上,mutationFn 应使用 API 数据类型(如 Partial<Project>),不要绑定 Zod 推断类型,也不要给 useMutation、mutationOptions 传调用点泛型。表单保存后若仍留在页面,需调用 form.reset()。

适用场景:Sentry 前端表单从旧系统迁移到 TanStack 新系统。

限制:资料未提供安装命令、版本要求、平台支持、收费或效果数据;部分示例在原文中被截断。