【发布时间】:2020-07-18 08:10:15
【问题描述】:
getAllSchools() 从后端返回学校列表。当应用程序加载时,我发出一个获取请求并将学校列表加载到一个名为学校的数组中。
addSchool() 添加一所新学校
每次addSchool() 完成时,我都想刷新学校数组以包含新学校。我该怎么做?
school-service.ts
getAllSchools(): Observable<ISchool[]> {
return this.http.get<ISchool[]>(this.url);
}
addSchool(school: ISchool): Observable<ISchool> {
this.schoolsSubject$.next();
return this.http.post<ISchool>(this.url, school, {
headers: new HttpHeaders({
'Content-Type': 'application/json'
})
});
}
app-component.ts
ngOnInit(): void {
this.getSchools();
}
getSchools(): void {
this.schoolService.getAllSchools().subscribe({
next: schools => {
this.schools = schools;
this.filteredSchools = schools;
},
error: err => this.errorMessage = err
});
}
add-school-component.ts
onSubmit(form: NgForm) {
this.schoolService.addSchool(this.model)
.subscribe(
(data: ISchool) => console.log(data),
(err: any) => console.log(err)
);
}
【问题讨论】:
-
add-school-component.ts 是 app-component.ts 的子项吗?