使用omit和pick的好处
比如你的项目某个模块目录下定义了一个专门的types.ts文件,专门用来存放类型定义,这个时候有一个新的接口的数据和之前的某个定义是被包含的关系,那么为了避免重复定义类型,就可以使用omit或者pick去挑选出我们想要的那些属性进行ts定义及校验
一、Omit
两个参数,第一个参数是类型(对象),第二个参数是类型(对象)里的属性名(一个或多个),第二个参数可以用来告知ts要排除哪些字段的ts校验,其他字段会被ts保留
二、Pick
两个参数,第一个参数是类型(对象),第二个参数是类型(对象)里的属性名(一个或多个),第二个参数可以用来告诉ts要指定使用哪些字段的ts校验,其他字段会被ts忽略
Omit
interface Person {
name: string,
age: number,
sex: string,
}
let person: Omit<Person, 'name'> = {
age: 15,
sex: '男'
}
2.Pick
interface Person {
name: string,
age: number,
sex: string,
}
let person: Pick<Person, 'name' | 'age'> = {
name: '王思聪',
age: 32,
}