angular - 错误类型错误:“this.exemployees is undefined”
问题描述
我正在学习 Angular,在练习过程中我遇到了一个错误。请帮助我解决此错误,并了解导致它的原因。
我创建了一个表单,我将在其中添加员工详细信息,按下按钮后将添加一个新员工,并将显示在下表中。
通过单击该员工旁边的“exemployee”按钮,该员工将被添加到 ex-employees 数组中,并将显示在 ex-employees 数组中。
单击“前雇员”按钮时,出现错误。
我试过调试,但不明白是什么原因造成的。
以下是控制台错误:
错误类型错误:“this.exemployees is undefined”
错误上下文
对象{视图:{...},nodeIndex:108,nodeDef:{...},elDef:{...},elView:{...}}
编码:
parentcomponent.ts
:
export class AppComponent {
title = 'template-driven';
employees;
exemployees;
constructor(emp_service:EmployeeServiceService) {
this.employees = emp_service.getEmployeee();
}
add_ex_employeee(val) {
this.exemployees.push(val);
}
add_employee(empO) {
this.employees.push(empO.value);
}
}
parent component html
:
<app-employees [exemployees]="exemployees" (exempadded)="add_ex_employeee($event)" [employees]="employees"></app-employees>
childcomponent.ts
:
export class EmployeesComponent implements OnInit {
@Input('employees') employees;
@Output('exempadded') exempadded = new EventEmitter();
@Input('exemployees') exemployees;
Exclient(ind) {
this.exempadded.emit(this.employees[ind]);
}
ngOnInit() {
}
}
解决方案
您还没有exemployees
像拥有数组那样定义employees
数组。
在组件的顶部:
export class AppComponent {
title = 'template-driven';
employees;
exemployees = [];
通过这种方式,您已将其设为数组,并且它已获得.push()
浏览器原生的功能。
推荐阅读
- elasticsearch - 在 Kibana 的 watcher 中放置要搜索的字符串的位置
- r - 如何避免 R 在 svg 中生成巨大的字体
- python - 在 with 语句后用作对象时是否有任何潜在的漏洞?
- visual-studio - 如何安装“Visual Studio 的单声道调试”?
- uitableview - 当swift4的搜索栏中有文本时如何使tableview不被遮挡
- vba - excel vba 如何从列号中获取整个列范围?
- git - 编辑变基/壁球提交消息时过滤重复项
- android - queryPurchaseHistoryAsync 订阅状态
- postgresql - 在 Odoo 中跟踪对 PostgreSQL 数据库表所做的更改
- php - 如何在 mysql 中合并 -all- 表?