首页 > 解决方案 > 如果我控制台记录这些值,我会得到它们为什么它返回一个空对象

问题描述

我使用动态表单从我的表单中检索这些值,当我控制台记录它返回的新学生并清空对象但是当我控制台记录每个人 this.student.Student_Name, this.student.Student_Number, this.student.Student_Surname 它给了我3 个单独的值。此外 Student_ID 默认为 0

student = {
Student_ID: 0,
Student_Name: '',
Student_Number: 0,
Student_Surname: '',
};

onSubmitStudent() {
this.student.Student_Name = this.studentsForm.value.studentData.Student_Name;
this.student.Student_Number = this.studentsForm.value.studentData.Student_Number;
this.student.Student_Surname = this.studentsForm.value.studentData.Student_Surname;
const newStudent = new Student(
  this.student.Student_ID,
  this.student.Student_Name,
  this.student.Student_Number,
  this.student.Student_Surname
);

console.log(newStudent)
newStudent returns empty.


export class Student {
public Student_ID: number;
public Student_Name: string;
public Student_Number: number;
public Student_Surname: string;

constructor(
Student_ID: number,
Student_Name: string,
Student_Number: number,
Student_Surname: string
) {
Student_ID = Student_ID;
Student_Name = Student_Name;
Student_Number = Student_Number;
Student_Surname = Student_Surname;
}
}

标签: angulartypescript

解决方案


使用此关键字在构造函数中赋值

constructor(
    Student_ID: number,
    Student_Name: string,
    Student_Number: number,
    Student_Surname: string
) {
    this.Student_ID = Student_ID;
    this.Student_Name = Student_Name;
    this.Student_Number = Student_Number;
    this.Student_Surname = Student_Surname;
}
}

推荐阅读