【发布时间】:2018-03-19 13:22:01
【问题描述】:
我正在尝试将Funcionarios 对象数组添加到Equipa 对象中,但是当我尝试push 和new Funcionarios 时,它会弹出并且这个错误TypeError: Cannot read property 'push' of undefined,我已经检查了代码几次并初始化了所有变量,但它总是给我同样的错误。
export class Funcionarios {
id : Number;
codFunc: Number;
nomeFunc: string;
constructor(codFunc: Number, nomeFunc: string) {
this.codFunc = codFunc;
this.nomeFunc = nomeFunc;
}
}
export class Equipa {
id : Number;
codEquipa: Number;
nomeEquipa: string;
ocorFuncs: Funcionarios[] = [];
constructor(id : Number, codEquipa: Number, nomeEquipa: string, funcs: Funcionarios[]) {
this.id = id;
this.codEquipa = codEquipa;
this.nomeEquipa = nomeEquipa;
this.ocorFuncs = funcs;
}
}
export class TestComponent implements OnInit {
equipa: Equipa = new Equipa(null, null, null, null);
ngOnInit() {
this.equipa.ocorFuncs.push(new Funcionarios(1, "qwe"));
this.equipa.ocorFuncs.push(new Funcionarios(2, "asd"));
this.equipa.ocorFuncs.push(new Funcionarios(3, "zxc"));
}
}
【问题讨论】:
-
尝试推入
ngAfterViewInit而不是ngOnInit -
@Luca,抱歉,这不是答案
-
equipa: Equipa = new Equipa(null, null, null, []);
-
@Eliseo 是的,对!我的误会
标签: arrays angular typescript object