У меня есть список элементов, одним из свойств которых является тип, и его значения: {footprint, platform, roving} Я пытаюсь отсортировать список по следующим критериям: platform> footprint> roving
Поскольку след алфавитного порядка находится перед платформой, сортировка по полю не работает должным образом, и я не знаю точно, как реализовать обратный вызов пользовательской сортировки для этого. Я использую https://vadimdez.github.io/ngx-order-pipe/ модуль и вот моя попытка:
template
...
<tr *ngFor="let platform of platforms | orderBy: order: false: true: sortCriteria; let i = index;">
...
...
component
...
order: string[] = ['type', 'name'];
...
sortCriteria(itemA, itemB) {
if (itemA.type == 'platform') return 1;
if (itemB.type == 'platform') return -1;
if ((itemA.type == 'footprint') && (itemB.type == 'roving')) return 1
if (itemA.type == 'roving') return -1
}
...
Буду признателен за некоторые идеи, чтобы получить этосортировка работает как положено.