我有一个基类和多个扩展该基类的类,它们都有一个私有构造函数。
我现在想创建一个静态函数来创建扩展类的新实例。通常我会有这样的函数头:
public static createInstance<T extends BaseClass>(clazz: { new(): T }): T
当我想使用这个功能时:
createInstance(CustomClass)
它导致打字稿吐出这个错误:
<块引用>TS2345:“typeof CustomClass”类型的参数不可分配给 'new () => CustomClass' 类型的参数。 无法将“私有”构造函数类型分配给“公共”构造函数类型。
实际转译后的代码运行良好。
我知道这个错误告诉我什么。但我找不到解决这个问题的方法。我已经搜索了很多,我似乎很孤独这个问题。有没有办法用私有构造函数引用类?