I’m using moment.js, you could just stick to the Date class.
import { Pipe, PipeTransform } from '@angular/core';
import moment from 'moment';
@Pipe({
name: 'sortByDatetime',
})
export class SortByDatetime implements PipeTransform {
transform(value: any, keyName?: string): Object[] {
value.sort((a: Object, b: Object): number => {
var first = moment(a[keyName], 'YYYY-MM-DD HH:mm:ss');
var second = moment(b[keyName], 'YYYY-MM-DD HH:mm:ss');
// console.log('SortBy: Compare ' + first.format('YYYY-MM-DD HH:mm:ss') + ' to ' + second.format('YYYY-MM-DD HH:mm:ss'));
return first.isBefore(second) ? -1 : first.isAfter(second) ? 1 : 0;
});
return value;
}
}
Call it using
<ion-item *ngFor='let reply of comment.replies.comments | sortByDatetime:"publishedAt"'>