TS 内置条件类型

Pick

从 Type 中选取一系列的属性,这些属性来自于 Keys(字符串字面量或字符串字面量的联合类型),用这些属性构成新的 type。

type Test = {
    
    
    name: string;
    age: number;
    salary?: number;
};

//pick
type picked = Pick<Test, "name" | "age">;
// 结果
// type picked = {
    
    
//     name: string;
//     age: number;
// }

ReturnType

获取函数的返回值类型

// 比如
type Func = () => User;
type Test = ReturnType<Func>; // Test = User

// 其他例子
type T0 = ReturnType<() => string>; // string
type T1 = ReturnType<<T>() => T>; // unknown
type T2 = ReturnType<<T extends U, U extends number[]>() => T>; // number[]

猜你喜欢

转载自blog.csdn.net/DeMonliuhui/article/details/129314730