значения раскрывающегося списка в алфавитном порядке угловые 6 - PullRequest
0 голосов
/ 25 апреля 2019

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

<select class="form-control fix-dropdown" required  
    (change)="batchSorceList();"
    [ngClass]="{'is-invalid':glheaderform.submitted && orgname.invalid}"
    #orgname="ngModel" [(ngModel)]="orgNameModel.orgName"
    name="orgName"> 
        <option value="undefined" disabled="true">--Select--</option>
        <option *ngFor="let bank of orgNameModel | unique ">{{bank.orgName}}</option> 
</select>

Ответы [ 3 ]

1 голос
/ 25 апреля 2019

В качестве лучшей практики в Angular не следует использовать OrderPipe

если вы хотите отсортировать элементы по именам, используйте функцию сортировки исключительно на JavaScript следующим образом

sortBy(prop: string) {
  return this.orgNameModel.sort((a, b) => a[prop] > b[prop] ? 1 : a[prop] === b[prop] ? 0 : -1);
}

и в вашем HTML

<option *ngFor="let bank of of filterBy('orgName')"| unique ">{{bank.orgName}}</option>
0 голосов
/ 25 апреля 2019

Реализуйте трубу, подобную этой, с помощью функции сортировки (см. Здесь: https://stackblitz.com/edit/angular-d17atb) -

@Pipe({name: 'sortBy'})
export class SortByPipe implements PipeTransform {
  transform(value: any[]) : any[] {
    value.sort(function(a,b){
    let alc = a.toLowerCase(),
    blc = b.toLowerCase();
    return alc > blc ? 1 : alc < blc ? -1 : 0;
 });
    console.log(value);
    return value;
  }
}

И HTML будет как -

 <li *ngFor="let value of list | sortBy">{{value}}</li>
0 голосов
/ 25 апреля 2019

Используйте orderBy для сортировки поля выбора

<option *ngFor="let bank of orgNameModel | unique | orderBy : 'your column name' ">{{bank.orgName}}</option>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...