从通用类定义类型

时间:2019-06-26 09:53:28

标签: typescript typescript-typings

我有一个可以将泛型传递给的类。该泛型应该是具有键和值的对象。在该课程中,我经常提到这些键和值:

class Service<C extends Converters> {
  public read<N extends keyof C>(name: N): C[N];
}

基本上,read可以以通用方式接收Converters中的密钥,并在转换器中返回相应的值。

我在那个班级使用大约10倍的模式。有没有一种方法可以定义类型一次并重用它们?像

class Service<
  C extends Converters,
  Keys = keyof C,
  Values<K extends Keys> = C[K]
> {
  public read<Name extends Keys>(name: Name):Values<Name>;
}

但是^不起作用

0 个答案:

没有答案