Я пытаюсь создать форму, которая будет принимать информацию о планировании, которая потенциально может быть представлена в нескольких различных форматах (еженедельно, ежемесячно и т. Д.). Я планировал иметь раздел расписания в форме, где пользователь выбирает тип расписания с помощью группы переключателей. Если выбран вариант «Еженедельно», появится группа флажков с днями недели, чтобы вы могли выбрать дни недели. если ежемесячно, то можно выбрать день месяца и т. д. Я попытался использовать способ отображения * ngIf, но он не работает, и я не получаю сообщений об ошибках. Есть идеи, как это реализовать?
Я использую:
-Угловые элементы материала
-Ангуляр 2 (8)
-Ангулярные реактивные формы
У меня уже есть часть этого, ниже приведен код переключателей и первая часть расписания, которую я хочу скрыть (извиняюсь за плохое форматирование кода, все еще вычисляя переполнение стека):
<form [formGroup] = "SchedInfo" (ngSubmit)="onSubmit()">
<mat-radio-group formControlName= "sType" (ngSubmit)= "onSubmit()">
<mat-radio-button type="radio" [value] ="true" [checked] = "value">Weekly</mat-radio-button>
<mat-radio-button type="radio" [value] ="false" [checked] = "!value">Monthly</mat-radio-button>
</mat-radio-group>
<div class = "weeklyS" *ngIf= "sType.value">
<br>
<!-- possibly need to resturcture the section below -->
<mat-checkbox formControlName= "mo">Monday</mat-checkbox>
<mat-checkbox formControlName= "tu">Tuesday</mat-checkbox>
<mat-checkbox formControlName= "we">Wednesday</mat-checkbox>
<mat-checkbox formControlName= "th">Thursday</mat-checkbox>
<mat-checkbox formControlName= "fr">Friday</mat-checkbox>
<mat-checkbox formControlName= "sa">Saturday</mat-checkbox>
<mat-checkbox formControlName= "su">Sunday</mat-checkbox>
</div>
В конце концов, моя цель для этого - иметь модуль расписания, который можно переключать между несколькими различными методами ввода.
Также:
должен ли я иметь один div, который заполняется при каждом изменении выбора, или я должен иметь несколько div, которые отображаются / скрываются в зависимости от выбора?