首页 > 解决方案 > 类的东西扩展 T

问题描述

关于标题,是否相当于class Thing<T> extends T打字稿中的可能?最好以可读的方式。目前尝试这行代码会导致Cannot find name 'T'VSCode 出现错误。尝试在这里和谷歌上找到答案,但没有发现类似的东西。

标签: javascripttypescriptclass

解决方案


您不能直接这样做,您可以创建一个中间类,然后使用类型断言使其适合返回的自定义构造函数签名T和类:

class _Thing { }

const Thing: {
  new <T>(): _Thing & T
} = _Thing as any;


new Thing<{ prop: string }>().prop

推荐阅读