Установить значение Select для HTML, используя форму группы - PullRequest
0 голосов
/ 10 сентября 2018

На основе данных Json мне нужно выполнить итерацию выбора переключателей, из которых может быть выбрана только одна.

JSONDATA = Observable.of ({ Предметы: [ Itemid: 1, Itemid: 2, Itemid: 3 ]})

Formgroup выглядит следующим образом, состоящий из выбранных пользователем itemId:

 this.myform = this.fb.group({
      mydata: ''
    });

Итерированный HTML-код выглядит следующим образом:

 <div *ngFor="let item of (items$ | async); index as i; first as first">
            <input type="radio" id="{{item.itemId}}" name="test" value="{{item.itemId}}"  [formControl]="myform.controls.mydata" >
    </div>

В конкретном сценарии существует требование, что если в данных json содержится только один itemId, то необходимо предварительно выбрать переключатель, и форма должна быть автоматически установлена ​​с этим значением, и форма получит значение VALID.

Мне удалось установить данные с помощью формы группы setValue, используя:

this.myform.setValue(mydata , 1)

Но в этом случае состояние формы меняется на допустимое, но в HTML переключатель не был выбран. Так что я попытался добиться этого с помощью добавления выбранных к переключателю

Но это также дает ошибку при разборе шаблона.

Поэтому я хочу, чтобы переключатель был предварительно выбран, если в массиве есть только один элемент.

...