我正在尝试向我的角度应用程序中添加服务,但是我不知道如何解决下一个错误:
类型“ 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();
}
}
答案 0 :(得分:2)
该错误消息表示无法将Teacher
数组分配给已声明为单个Teacher
的属性。您需要更新声明,使其为数组:
teachers: Teacher[];
提示一直是错误消息中的
类型“ Teacher []”不可分配给类型“ Teacher”
答案 1 :(得分:1)
在组件中,属性teachers
的键入应为array
。
teachers : Teachers[]