У меня есть канал, который сортирует по свойству массив по дате.
Проблема в том, что не у каждого элемента есть дата свойства в args.key
. Значит, строки должны быть внизу списка.
import {
Pipe,
PipeTransform
} from "@angular/core";
@Pipe({
name: 'sort'
})
export class ArraySortPipe implements PipeTransform {
transform(records: Array < any > , args ? : {
key: string,
direction: boolean,
type: "int" | "string" | "date"
}): any {
return records.sort(function (a: any, b: any) {
if (args.type === 'date' && args.direction) {
return new Date(a[args.key]).getTime() - new Date(b[args.key]).getTime();
}
});
};
}
Как переместить свойства без даты в конец списка?