arrays - TypeScript - 作为抽象类的子对象的数组的语法是什么?
问题描述
我有这个 TypeScript 继承层次结构,Person 是基础抽象类。而 Man 类和 Woman 类是抽象 Person 类的后代。抽象类 Person 有一个名为 _children 的属性,它是抽象 Person 对象的 Array。我需要在我的女人和男人类中添加一组孩子。但我想我不能添加 Person 对象的数组,因为它是抽象的。相反,我需要将后代对象 Man & Woman 添加到数组中。你能告诉我这个结构的语法是什么吗?所以我需要一个可以包含 Man & Woman 对象的数组。
当我尝试这样做时:
private children: Person[] = [this.womanA, this.manB, this.womanD, this.manC];
private manD: Man = new Man(this.children, 'Lyngby');
我收到错误:未捕获的 ReferenceError:Person is not defined at Object../src/app/_models/Man.ts
abstract class Person {
private _children: Person[];
constructor(children: Person[]) {
this._children = children;
}
}
export class Woman extends Person {
private _shoesize: number;
constructor(children: Person[], shoesize: number) {
super(children);
this._shoesize = shoesize;
}
}
export class Man extends Person {
private _favteam: string;
constructor(children: Person[], favteam: string) {
super(children);
this._favteam = favteam;
}
}
解决方案
推荐阅读
- r - 总结每天的时差
- macos - 将 awk 与 gedit 外部工具一起使用
- node.js - 如何构建多个 npm 包进行共享?
- r - 将显着性星添加到相关图,哪个包?
- javascript - 无法在 BigQuery UDF 中使用 DOMParser
- javascript - Javascript 对象和 getAttribute 显示不同的值
- javascript - 如何在点击java脚本的地方画圆
- python - 如何将数据加载到 Conv3d 进行视频分类?
- django - Django 频道使用 WS:// 但不使用 WSS://
- c++ - 具有函数、输入和输出类型的可变参数模板