【发布时间】:2020-07-08 12:00:25
【问题描述】:
我有一个类数组,所有这些类都是从一个基本抽象类扩展而来的。如果您能原谅糟糕且过度使用的 OO 抽象:
abstract class Animal {
abstract speak(): string;
}
class Dog extends Animal {
speak(): string {
return "woof... sigh"
}
}
class Cat...
我有一个封装了所有这些实现的数组:
const all = [Cat, Dog];
我想告诉 TypeScript,这个数组中的所有内容在构造时都会返回一个作为 Animal 实例的类。
重要的是要注意这是传递类,而不是对象,因此这将是无效的,因为类本身不继承自抽象。
const all : Array<Animal> = [Cat, Dog]
不幸的是,我似乎在文档中找不到关于通过 new 关键字进行类型提示的任何内容。
【问题讨论】:
标签: typescript