any与interface
any 大法
- ✨ 前期开发代码量少,快速简单。
- 🚨 由于未定义 interface 导致整个项目充斥着大量 any 类型,项目沦为 AnyScript。
- 🚨 无法获得健全的 ts 语法检测功能,弱化了使用 ts 的作用。
- 🚨 后期维护成本高,后端修改字段,ts 语法无法检测。
interface
- 🚨 前期开发代码量大,需要为每个接口定义 interface。
- ✨ 获得丰富的代码提示以及语法检测能力。
- ✨ 后期项目易维护,接口字段改动,只需要同步更新 interface 数据即可实现类型检测。
总结
通过上面的总结不难看出,interface 方式优势众多,但同时也有着一个致命的弊端:
我们在前期的开发过程中需要对所有接口返回的不同数据类型定义对应的 interface。
实际项目中,字段数量可能达到几十上百个!
基于上面 interface 方式所面临的问题
给大家安利一款前端在线代码生成工具:JsonToAnyhttps://xiets.gitee.io/json-to-any-web/
能够很轻松的将我们接口返回的 JSON 数据转换成我们前端所需要的 interface
最大限度的节省了我们手动定义 interface 的时间