出现错误:无法将类型“ Teacher []”分配给类型“ Teacher”

时间:2020-03-12 20:42:44

标签: angular

我正在尝试向我的角度应用程序中添加服务,但是我不知道如何解决下一个错误:

类型“ Teacher []”不可分配给类型“ Teacher”。 类型“教师[]”中缺少属性“名称”。

export const TEACHERS: Teacher[] = [
  { name:'Negrut Marioara' ,gender: "Female" ,subject: 'Romanian' },
  { name:'Nagy Ridi Eniko' ,gender: "Female" ,subject: 'Maths' },
  { name: 'Sarkadi Viktoria' ,gender: "Female" ,subject: 'Hungarian' },
  { name:'Flonta Ioan' ,gender: "Male" ,subject: 'Latin' },
  { name:'Nagyvari Eniko' ,gender: "Female" ,subject: 'Physics' },
];
=============================================================================================
    export class Teacher {
    name: string;
    subject: string;
    gender: string;
  }
=====================================================================================================
@Component({
  selector: 'app-teachers',
  templateUrl: './teachers.component.html',
  styleUrls: ['./teachers.component.css']
})
export class TeachersComponent implements OnInit {

  teachers: Teacher
  selectedTeacher: Teacher;
  onSelect(teacher: Teacher): void {
    this.selectedTeacher = teacher;
  }
  constructor(private teacherService: TeacherService) {}

  ngOnInit() {
    this.getTeachers();
  }
  getTeachers(): void {
    this.teachers = this.teacherService.getTeachers();
  }

}

2 个答案:

答案 0 :(得分:2)

该错误消息表示无法将Teacher数组分配给已声明为单个Teacher的属性。您需要更新声明,使其为数组:

teachers: Teacher[];

提示一直是错误消息中的

类型“ Teacher []”不可分配给类型“ Teacher”

答案 1 :(得分:1)

在组件中,属性teachers的键入应为array

teachers : Teachers[]