В моем коде есть patchForm:
populateForm() {
this.hsP.homeboxPGetAll().subscribe(
homeboxsp => {
this.homeboxsp = homeboxsp
let controls = {
'homeboxpackage_id': new FormControl('', Validators.required)
};
for (let i = 0; i < this.homeboxsp.length; i++) {
controls['active-' + this.homeboxsp[i].homeboxpackage_id] = new FormControl(this.homeboxsp[i].active === 1, Validators.required)
}
this.activeHomeboxPForm = new FormGroup(controls);
this.patchForm();
}
)
}
patchForm() {
this.activeHomeboxPForm.patchValue({
homeboxpackage_id: this.homeboxsp.map(x => x.homeboxpackage_id),
});
}
Service.ta
public homeboxPGetAll(): Observable<HomeboxP[]> {
let headers = new Headers();
headers.append('x-access-token', this.auth.getCurrentUser().token);
return this.http.get(Api.getUrl(Api.URLS.homeboxPGetAll), {
headers: headers
})
.map((response: Response) => {
let res = response.json();
if (res.StatusCode === 1) {
this.auth.logout();
} else if (res.StatusCode === 4) {
return false;
} else if (res.StatusDescription === 'No result') {
return false;
} else {
return res.StatusDescription.map(homeboxP => {
return new HomeboxP(homeboxP);
});
}
});
}
Когда API получает данные, эта ошибка не отображается.Когда API получает пустые данные в консоли, выведите эту ошибку:
ОШИБКА TypeError: this.homeboxsp.map не является функцией HomeboxComponent.patchForm
Можете ли вы спросить меняИдея, пожалуйста, как решить эту ошибку?