угловой 6 Как заполнить значения на нг выбрать несколько вариантов - PullRequest
0 голосов
/ 12 января 2019

Я использовал ng-select для нескольких опций, и я хочу заполнить некоторые значения в ng-select. Я передал значения массива в ngmodel, но он не работает.

Вот мой код

companyArr = [10]; companyList = массив

<ng-select [items]="companyList" bindLabel="brand_name" bindValue="id"
                                    [multiple]="true" [(ngModel)]="companyArr" (change)="onSelectCompany($event)" name="companyArr"   [ngClass]="{ 'is-invalid': f.submitted && companyArr.invalid }" required> 
                                </ng-select>

Ответы [ 2 ]

0 голосов
/ 31 мая 2019

Если вы хотите получить значения, которые вы выбрали с несколькими опциями, вам нужно сохранить [значение] в объекте, а затем вы можете связать его в машинописи ... В моей ситуации я хотел, чтобы имя и фамилия сотрудника были разными полями. Таким образом, я получаю значение в obj, а затем объединяю их в машинописи, поэтому я выбрал имя выбранного сотрудника как «Фамилия Фамилии» ...

0 голосов
/ 10 марта 2019

Решение вашей проблемы заключается в атрибуте bindValue . Согласно документации Ng-select [1]:

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

Следовательно, чтобы заполнить и отобразить данные в нескольких входных данных ng-select, этот атрибут должен быть пустым , поскольку вы привязываетесь ко всему объекту (в данном случае к вашему массиву чисел).

Вот ваше решение:

<ng-select 
    [items]="companyList" 
    bindLabel="brand_name" 
    bindValue=""
    [multiple]="true" 
    [(ngModel)]="companyArr" 
    (change)="onSelectCompany($event)" 
    name="companyArr"
    [ngClass]="{ 'is-invalid': f.submitted && companyArr.invalid }" 
    required> 
</ng-select>

[1]: ng-select GitHub Documentation (https://github.com/ng-select/ng-select#api)

...