相关疑难解决方法(0)

使用Typescript实现Pure Class Mixins

我试图定义一个基于纯类的mixin函数,但是我无法为此类型获得正确的类型签名。

目的是提供一个接受任何Class A作为参数并返回扩展原始Class A的新Class B的函数。

export function mixin<A>(myclass: A) {
  return class B extends A {
    newMethod() {
      //stuff
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

正如我所说,我无法弄清楚。

  • 我需要一种表达A需要成为类的方法。
  • 我还需要表达返回类型,这会产生一些错误,其中包括:

    错误TS4060:导出函数的返回类型具有或正在使用私有名称'B'。

附加信息:

  • 这在utils.ts导出的模块内部,以便其他模块可以使用它
  • 所有这些都在我正在编写的库中进行

typescript typescript2.0

4
推荐指数
2
解决办法
2298
查看次数

标签 统计

typescript ×1

typescript2.0 ×1