Как предварительно выбрать значения Primeng Dropdown? - PullRequest
0 голосов
/ 25 июня 2018

У меня есть раскрывающееся меню с набором значений в моем угловом приложении.

На экране просмотра в раскрывающемся списке не отображается выбранное значение (значение, сохраненное в дБ), вместо этого отображается «Выбор».

HTML:

<p-dropdown    [options]="reasons" [(ngModel)]="selectedReason"   (onChange)="getCompleteReason($event)" styleClass="ui-column-filter" filter="true"> </p-dropdown>

Component.ts

this.reasons = [];
    this.reasons.push({label: 'Select', value: null});
    this.reasons.push({label: 'Reason 1', value: 'Reason 1'});
    this.reasons.push({label: 'Reason 2', value: 'Reason 2'});
    this.reasons.push({label: 'Reason 3', value: 'Reason 3'});
    this.reasons.push({label: 'Other', value: 'Other'});


this.selectedReason = 'Reason 2' (eg value stored in the db)

enter image description here

Ответы [ 2 ]

0 голосов
/ 26 апреля 2019

Чтобы предварительно выбрать значения выпадающего списка, вы можете обновить значения formGroup с помощью patchValue () следующим образом:

public parentForm: FormGroup
this.parentForm = this.formBuilder.group({
      group: [null, [Validators.required]],
      id_module:  [null]
    })

const newObj = {group: 'Test', id_module: 32}
this.parentForm.patchValue(newObj )
0 голосов
/ 25 июня 2018

Это сработало после того, как я добавил имя атрибута в выпадающий список

<p-dropdown   [options]="reasons" [(ngModel)]="selectedReason"  name="selectedReason"   (onChange)="getCompleteReason($event)" styleClass="ui-column-filter" filter="true">
...