У меня есть набор категорий из веб-сервиса: categories
и массив с выбранными категориями: selectedCategories
Чтобы отобразить все флажки, я делаю:
<form [formGroup]="formGroup" (ngSubmit)="onSubmit()">
<div class="row">
<div *ngFor="let category of categories">
<input type="checkbox" class="custom-control-input" [id]="category.id" formControlName="category"
[checked]="categoriesSelected?.includes(category.id)">
<label class="custom-control-label" [for]="category.id">{{ category.name | translate }}</label>
</div>
</div>
</form>
это прекрасно работает.
Затем я создаю свою группу форм:
ngOnInit() {
this.categoriesSelected = this.championships.map(championship => championship.category.id);
this.formGroup = this.formBuilder.group({
categories: this.formBuilder.array([{}])
});
}
Теперь мне нужен только идентификатор выбранных категорий.
Я немного запутался в связи между formBuilder и formGroup.
Если я добавлю formControlName="categories"
в свой шаблон, в тег input
, все данные исчезнут.
Как мне это сделать ?