Typescript如何导出从类工厂返回的类的类型
我有一个返回类的函数。类是在函数中定义的,并且定义取决于函数的输入。我正在使用。我已经创建了一个清晰地展示了这个问题的模型Typescript如何导出从类工厂返回的类的类型,typescript,typescript-typings,Typescript,Typescript Typings,我有一个返回类的函数。类是在函数中定义的,并且定义取决于函数的输入。我正在使用。我已经创建了一个清晰地展示了这个问题的模型 function MIXIN1<TBase extends Mixin1Dependencies>(Base: TBase){ return class MIXIN1Class extends (Base as Mixin1Dependencies){ constructor(props: any){ super(props);
function MIXIN1<TBase extends Mixin1Dependencies>(Base: TBase){
return class MIXIN1Class extends (Base as Mixin1Dependencies){
constructor(props: any){
super(props);
console.log('MXIN1');
}
}
}
type Mixin2Dependencies = MixinDependencies<Origin & MIXIN1Class>;
函数MIXIN1(基:TBase){
返回类MixinClass扩展(基为MixinIndependencies){
构造器(道具:任何){
超级(道具);
console.log('MXIN1');
}
}
}
类型Mixin2Dependencies=MixinDependencies;
我试图在
Mixin2Dependencies
的定义中使用MIXIN1Class
类型定义。有没有办法公开内部的mixinClass
?或者实现类似的行为,我尝试使用带有独立接口的实现
,但变得非常冗余。我认为您要寻找的是返回类型
实用程序类型
尝试ReturnType
,这将导致示例中的mixinClass
请参见
ReturnType
errors:“MIXIN1”指的是一个值,但在此处用作类型。你是说“typeof MIXIN”吗?@kevzettler你试过ReturnType
?@spender是的,我相信这是对一般问题的正确答案,但它在MIXIN中抛出了一系列其他错误implementation@spender是的,对,在原始答案中添加了typeof
,谢谢MIXIN1
是一个类工厂。它的返回类型取决于每次调用时作为TBase
传递的类型参数。