В моем компоненте:
Код: Выделить всё
ngOnInit() {
this.service.getInitialData().pipe(take(1)).subscribe(result => {
this.form = this.service.populateGroup(result);
});
}
Код: Выделить всё
public populateGroup(items: any[]) {
return this.formBuilder.group({
items: this.formBuilder.array(
this.populateArray(items)
),
});
}
private populateArray(items: any[]) {
return items.map((item: any) => this.populateGroupInsideArray(item));
}
private populateGroupInsideArray(item: any) {
return this.formBuilder.group({
id: this.formBuilder.control(item.id),
parameters: this.createParametersGroup(item)
}),
});
}
private createParametersGroup(item: any): FormGroup {
const group = this.formBuilder.group({});
of(item)
.pipe(
concatMap((item: any) =>
this.endpointService.getParameters(item.name)
)
)
.subscribe((result) => {
Object.keys(module).forEach((key) => {
group.addControl(key, this.formBuilder.control(result.param);
});
})
return group;
}
Код: Выделить всё
of(item)
Моя ошибка в том, что у меня случайным образом возникает 500, 400 или даже 404 ошибки. Если я вызываю конечную точку для каждого элемента вручную, все работает нормально. Я думаю, что-то не так с моим кодом, но я не знаю, как это исправить.
Большое спасибо!
Подробнее здесь: https://stackoverflow.com/questions/798 ... 4-errors-r
Мобильная версия