как очистить угловую реактивную форму? - PullRequest
0 голосов
/ 29 октября 2019

У меня есть мат-радио-группа внутри формы, и я хотел бы очистить переключатель, чтобы ничего не было выбрано для каждого нового вопроса в моем приложении для викторины. Как мне это сделать? Вот как выглядит моя форма:

<form [formGroup]="formGroup" (ngSubmit)="onSubmit()">
  <ol class="form-group">
    <mat-radio-group formControlName="answer" name="answer" (change)="radioChange($event.value)"
  (click)="question.selectedOption = option">
      <div class="radio-options" *ngFor="let option of question.options">
        <mat-radio-button class="option" [value]="option.optionValue" disableRipple="true"
          [checked]="question.selectedOption == option"
          [ngClass]="{'is-correct': isCorrect(option.optionValue),
                  'is-incorrect': isIncorrect(option.optionValue)}">
          <li>{{ option.optionText }}</li>

Ответы [ 2 ]

6 голосов
/ 29 октября 2019

Вы можете сбросить свою форму:

reset() {
    this.myForm.reset();
  }

ИЛИ

, как упомянуто @miselking: Просто сбросьте определенный элемент управления (в данном случае «переключатель»). Что-то вроде this.myForm.get('radioButtonControl').reset()

2 голосов
/ 29 октября 2019

Самый простой и понятный способ очистки форм, а также их состояний ошибок (грязный, нетронутый и т. Д.)

this.formName.reset();

для получения дополнительной информации о считывании форм здесь

https://angular.io/docs/ts/latest/guide/forms.html

ИЛИ

Просто сбросить определенный элемент управления (в данном случае «радио-кнопка»)

this.myForm.get('radioButtonControl').reset()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...