есть ли способ связать wj-combo-box с именем элемента управления формой в angular 4

<wj-combo-box 
    [itemsSource]="years" 
    formControlName="modelYear" 
    class="form-control" [isEditable]="false" 
    [isDisabled]="isEditVehicle"
    placeholder="Select model year">
</wj-combo-box>

Я пробовал использовать приведенный выше код, но при отправке формы получаю сообщение об ошибке.

ОШИБКА Ошибка: к элементу управления формой с именем 'modelYear' в _throwError не прикреплен экземпляр FormControl


person Akash Chandran    schedule 19.06.2017    source источник


Ответы (1)


Ваш элемент управления Combo должен быть дочерним по отношению к объекту группы форм:

<form [formGroup]="vehicleForm">
  <wj-combo-box 
     [itemsSource]="years" 
     formControlName="modelYear" 
     class="form-control" [isEditable]="false" 
     [isDisabled]="isEditVehicle"
     placeholder="Select model year">
  </wj-combo-box>
</form>

В конструкторе кода компонента вам необходимо создать объект группы формы следующим образом:

constructor(private fb: FormBuilder) {
  this.vehicleForm = this.fb.group({
    modelYear: null,    // or feel free to pre-populate it
  });
}

Пожалуйста, дайте мне знать, если я что-то пропущу.

person Babak    schedule 03.04.2018