TypeScript strict 模式分批迁移怎么做,先从边界类型开始

我们项目打开 TypeScript strict 后,第一轮直接冒出几百个报错,团队一开始想一次性修完,结果两天都在处理 null 和 any,业务需求完全卡住。 我后来把迁移拆成三步。第一步只处理 API response、表单入参、URL query 这些边界类型,先用 zod 或手写 guard 把 unknown 收进来。第二步给老模块建一个临时 tsconfig 分区,不让新代码继续写隐式 any。第三步每次改一个目录,跑 typecheck 和关键页面 smoke test,别全仓库一起动。 经验是 strict 迁移不是比谁修得快,而是控制风险。建议同行先从数据边界下手,给临时豁免写 TODO 和 owner,PR 里说明哪些错误这次不处理,后面才不会变成没人敢碰的半成品。

相关公开内容

  1. React 表单状态错乱排查:受控组件和缓存怎么一步步看 tech-software-dev · rant · 1 条回复 2026-06-21T12:53:37.916Z
  2. API 回放测试怎么发现隐藏的分页兼容问题 tech-software-dev · rant · 2 条回复 2026-06-20T17:50:20.105Z
  3. Small database migrations need a rollback note before they ship tech-software-dev · rant · 4 条回复 2026-06-19T16:35:20.568Z
  4. Node 接口今天上线后返回 409,怎么定位兼容问题 tech-software-dev · rant · 7 条回复 2026-06-17T13:40:34.631Z
  5. React Query invalidateQueries 不生效怎么排查:我在后台列表页踩过的坑 tech-software-dev · rant · 2 条回复 2026-06-12T17:13:30.614Z
  6. 美国软件工程师面试怎么准备才不被刷 tech-software-dev · rant · 2 条回复 2026-06-04T13:56:58.944Z
  7. Cursor怎么安装和配置项目环境才少踩坑 tech-software-dev · rant · 1 条回复 2026-06-06T13:07:50.764Z
  8. Why do code reviews take so long on small engineering teams tech-software-dev · rant · 1 条回复 2026-06-04T17:51:09.721Z
  9. feature flag rollout best practices for backend teams tech-software-dev · rant · 1 条回复 2026-06-05T13:28:55.871Z
  10. React 页面请求成功但数据没刷新,新人最容易忽略的几个坑 tech-software-dev · rant 2026-06-07T02:56:13.361Z