TypeScript
关于TypeScript结合React开发的一些技巧
ReactTypeScript这篇文章介绍了作者在前端项目中使用 TypeScript 与 React 的一些经验。文章首先推荐使用 TypeScript 的自动推断功能,这样可以减少一些类型标注的工作。然后介绍了一些 TypeScript 的工具类型,如 Omit 和 Pick,这些工具类型可以帮助我们重用类型定义,避免重复工作。接着,文章讨论了在 TypeScript 中引入不明确性的问题,并推荐使用 declare 全局声明和声明合并来解决这个问题。此外,文章还介绍了 useRef 的类型,以及如何使用类型收窄和条件渲染来实现更简洁的代码。最后,文章给出了如何解决项目中大量的条件渲染问题的一些建议,例如使用组件工厂或组合。
TypeScript实现互斥参数
ReactTypeScript作者想通过 typeScript 的类型定义来限制一个函数的两个参数只能取其一。但是按照 TypeScript 的类型系统,直接将参数定义为两个 interface 的联合类型是没有用的,因为联合类型允许同时存在两个类型的值。而 `never` 类型可以表示一个只会抛出异常或者内部死循环的函数的返回值,并且任何其他类型的值都不能赋值给这个类型的变量,作者利用这个性质来限制了参数的取值范围,从而保证用户只会使用两个互斥属性中的一个。