У меня есть значения в моем массиве пользовательских дней, но они не повторяются, так как я добавляю сотрудника, они не получают обновления.
Мне нужно отобразить значения выбранных флажков в "пользовательских днях ": [], array.
Я получаю значения только тогда, когда я помещаю" userdays ": [], внутри значений формы, и не получаю их, когда я помещаю их в" employee "
шаблон
<label class="checkbox-inline" *ngFor="let day of days; ">
<input
type="checkbox"
formControlName="{{ day.name }}"
name="{{ day.name }}"
(change)="onChange(day.value , $event.target.checked)"
/>{{ day.value }}
</label>
файл TS
onChange(day: string, isChecked: boolean) {
const dayFormArray = <FormArray>this.empForm.controls.userdays;
if (isChecked) {
dayFormArray.push(new FormControl(day));
} else {
let index = dayFormArray.controls.findIndex(x => x.value == day)
dayFormArray.removeAt(index);
}
}
newEmployee(): FormGroup {
return this.fb.group({
firstName: '',
lastName: '',
repeat_sun: false,
repeat_mon: false,
repeat_tue: false,
userdays: this.fb.array([]),
skills:this.fb.array([])
})
}
https://stackblitz.com/edit/angular-u8dxok?file=src%2Fapp%2Fapp.component.ts