以上代码定义了一个类型 Person,表示一个人的基本信息,包括 idnameage 三个属性。然后定义了一个类型 MyOmit,它接受两个类型参数 TK,其中 T 表示要操作的类型,K 表示要删除的属性名。在类型 MyOmit 中,使用了 TypeScript 4.1 中的新特性“模板字符串字面量类型(Template Literal Types)”,即 [P in keyof T as P extends K ? never : P],它表示遍历 T 的所有属性,如果属性名是 K 中的某一个,那么就忽略该属性,否则就保留该属性。最后,使用类型 MyOmit 将类型 Person 中的 idname 属性删除,生成了一个新的类型 P5,它只包含 age 属性。


原文地址: https://www.cveoy.top/t/topic/mudf 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录