typescript-best-practices 是一份整理 TypeScript 类型与输入校验写法的 Skill。它让请求状态少出现“同时加载又失败”这样的矛盾组合,并提醒接口返回仍需运行时检查。
主文把等待、加载、成功与失败写成互斥状态:成功带数据,失败带错误,而不让几个可选字段随意拼接。用户编号与订单编号也可在类型层面区分,减少传错位置。
这些保护发生在编译阶段。外部 JSON 真正长什么样,还要用校验规则检查;规则通过后再推导类型,避免维护两份越来越不同的定义。
示例提到 Zod 的校验与转换,但转换日期不等于自动确认日期有效,具体库写法要核对项目版本。React 专项另有配套技能,本文只讲主文中的语言基础。用实际输入失败样本和状态切换验证,才知道这些约束是否覆盖真实问题。