posts

文章归档

PlumePHP 全站文章的归档入口,按时间倒序汇总各专题的技术文章,并提供按主题浏览的专题分类入口。

这里是全站文章的归档入口,下面是按时间倒序排列的全部文章。若想按主题浏览,请从首页的专题分类进入。

全部文章

全部文章 game golang 客户端开发 Minigame Saas rust Python Java cg Typescript
typescript

《TypeScript编程实战》13.3 复杂表单与动态字段

字段能增删、能嵌套、能按另一个字段的值条件出现,是表单真正开始变复杂的三个信号。本节用 useFieldArray 处理动态行,讲清 key 为什么必须用 RHF 生成的 id 而非数组下标;再用判别联合 schema 表达条件字段、用 superRefine 做跨行校验。同时实测数组级错误与行级错误在 errors 树上的不同落点,并给出分步表单的 trigger 校验与草稿持久化方案。

10 分钟阅读
TypeScript TypeScript编程实战
typescript

《TypeScript编程实战》13.2 表单类型推导与错误映射

Zod 的 transform 与 default 会让 schema 的输入与输出变成两副面孔,表单类型也跟着分叉。本节用实测结果讲清 z.input、z.output 与 z.infer 的关系,给出 useForm 三段泛型的正确写法,并解释写错时编译器报出的 Resolver 不兼容信息。随后把 ZodError 映射成 RHF 的 FieldErrors,覆盖嵌套路径与服务端错误回填。

10 分钟阅读
TypeScript TypeScript编程实战
typescript

《TypeScript编程实战》13.1 React Hook Form + Zod

受控表单在大表单下会因每次按键重渲染整棵树而变慢。本节从这一性能问题切入,讲清 React Hook Form 的非受控与订阅式模型为何更快,再用 zodResolver 把 Zod schema 变成表单唯一的规则与类型来源,让字段名、错误结构与提交类型自动对齐。你会掌握 register、handleSubmit、formState 的用法与 Controller 的接入时机。

10 分钟阅读
TypeScript TypeScript编程实战 Zod