2017-08-01 120 views
0

我使用sequalize模型。他们是班级。当我注册他们时,一些数据被附加到他们身上。所以我需要存储它们。我将它们存储在一个列表中。但是当我将模型检索到变量时,会出现一些混淆。变量必须有一个类型来存储类型?包含类型的变量类型,而不是实例

+0

我想你会发现更好的答复,如果你发布[最小,完整,可验证的例子](https://stackoverflow.com/help/mcve)。 – jcalz

回答

1

我不确定你需要什么,因为你没有发布任何代码来证明你的问题。这很可能是你需要的是使用typeoftype query你的类的构造函数:

class Foo { ... } 
class Bar { ... } 
class Baz { ... } 
var instances: (Foo | Bar | Baz)[] = [new Foo(), new Baz(), new Foo()]; 
var classes: (typeof Foo | typeof Bar | typeof Baz)[] = [Foo, Baz, Foo]; 

或者,也许你想一般指定一个构造函数,你可以做如下:

type Constructor<T = {}> = { 
    new (...args: any[]): T; 
    readonly prototype: T; 
} 
var classes: (Constructor<Foo|Bar|Baz>)[] = [Foo, Baz, Foo]; 

我希望有所帮助。如果您需要更多信息,请在您的问题中添加更多详细信息。祝你好运!

相关问题