【发布时间】:2020-03-18 08:20:15
【问题描述】:
type CtorParamsType<T> = T extends {
new(...args: infer U);
} ? U : any;
class MyType {
constructor(name: string, age: number) {
}
}
type T1 = CtorParamsType<MyType> //any
type T2 = CtorParamsType<{ new(name: string, age: number); }> //[string, number]
在这个示例中,我预计 T1 和 T2 将具有相同的类型。为什么它们不同?
【问题讨论】:
标签: typescript types type-inference