我通过这种方式在打字稿中模拟多重继承:
export const FileManager = superClass => class extends superClass {
//...
}
export declare abstract class Model<T extends Model<T>>{
//...
}
我尝试了以下操作,然后说FileManager期望使用1个参数而不是2个参数。
export class Order extends FileManager(Model<Order>)){
//...
}
所以我将FileManager定义更改为:
export const FileManager = (superClass,t) => class extends superClass<t> {
//...
}
但随后出现此错误:
[ts]'typeof Model'类型的值不可调用。你是说要 包括“新”?
在我需要为模型类声明类型声明之前,它运行良好(它是必需的,我无法删除它)。 我认为问题在于我接收“ typeof”作为参数的方式以及如何动态实例化。
我真的被困住了,我将非常感谢您的帮助