【发布时间】:2019-07-27 14:05:59
【问题描述】:
我在 Typescript 中创建了一个基类,它具有通用类型和填充数据表的逻辑。这个类将由 Angular 组件扩展,它们将传递各种类。我想派生泛型类型的属性,以便可以动态定义列标题。如何获取正在使用其类型的类的属性?请帮忙。
以下是我尝试做到这一点的基本内容。我试图用 Dog 或 Cat 类的属性动态填充 displayColumns:
export class MyBaseClass<T>
{
public displayedColumns: string[] = [];
constructor()
{
let dataItem: T = {} as T;
Object.keys(dataItem).forEach((key: string) => this.displayedColumns.push(key));
}
}
export class PetsComponent extends MyBaseClass<Dog>
{
}
export class Dog
{
public Id: number = 0;
public Name: string = "";
}
export class Cat
{
public Id: number = 0;
public Name: string = "";
}
【问题讨论】:
标签: angular typescript generics