TS自带的工具类型
官网地址:
Omit
去掉某个属性
interface User {
id: number;
name: string;
gender: string;
}
type StudentWithoutGender = Omit<User, "gender">;
pick
选择某个属性
interface User {
id: number;
name: string;
gender: string;
}
type StudentWithoutGender = Omit<User, "gender">;
// Pick选择某个属性
type StudentWithName = Pick<User, "name">;
type StudentWithoutGender1 = Pick<User, "id" | "name">;
Partial
将属性变成可选的
interface User {
id: number;
name: string;
gender: string;
}
// Partial将属性变成可选的
type StudentPartial = Partial<User>;
const student:StudentPartial = {
id: 123,
name: "hello",
}
Record
构建一个对象类型
type StudentRecord = Record<"name" | "age", string>;
const s: StudentRecord = {
name: "hello",
age: "18",
}
8323

被折叠的 条评论
为什么被折叠?



