Измените выбранное значение выбора в зависимости от ввода в Angular - PullRequest
0 голосов
/ 28 мая 2020

У меня есть эта форма. Что, если температура человека превышает 38 ° C градусов, значение выбора должно измениться со здорового на больное, если оно выбрано.

<form [formGroup]="form">
  <select formControlName="health" required>
  <option value="HEALTHY">Healthy</option>
  <option value="SICK">Sick</option>
  </select>
  <input (focusout)="changeValue($event)" type="number" 
   formControlName="temperature" required>
  </form>

По завершении записи вызывается функция changeValue и вот как я пытаюсь изменить значение выбранной опции.

ngOnInit() { 
  this.form = this.formBuilder.group({
    health: ["", Validators.required],
    temperature: ["", Validators.required],
})}
change(temperature){
  if(temperature > 38){
     this.form = this.formBuilder.group({
     temperature: ["SICK"],
})}
}

Ответы [ 2 ]

1 голос
/ 28 мая 2020

Есть кое-что, что можно улучшить при использовании реактивных форм

Проверьте следующее

https://stackblitz.com/edit/angular-ivy-pytdtp

0 голосов
/ 28 мая 2020

Вам нужно напрямую сослаться на formControl, который вы хотите изменить, и использовать его метод .setValue ().

поэтому в методе, который вы вызываете при изменении, вы можете сказать this.form.get('temperature').setValue('SICK').

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...