我有一个代表用户的抽象TypeScript类。有多个子类代表不同的第三方服务。该类具有第三方服务的通用类型。
我正在尝试创建一个可以容纳User的任何实例的数组,但是TypeScript会引发错误。
let users: User[] = [
new TestUser("test-1"),
new TestUser("test-2"),
new TestUser("test-3")
]
export abstract class User<T extends ApiService> {
public id: string;
public username: string;
}
我收到以下错误:
Generic type 'User<T>' requires 1 type argument(s).ts(2314)
在Java中,我可以执行以下操作以允许User的任何子类。
User<?>
我该如何在TypeScript中做到这一点?
答案 0 :(得分:0)
如Aleksey所说:
let users: User<any>[]
工作完美!