我正在尝试在 ngFor 循环中对我的数据进行排序,但是我的自定义管道无法按预期工作,任何人都可以帮助我...
export class OrderbyLastMessagePipe implements PipeTransform {
transform(array: Array<string>, args?: any): Array<string> {
if (array !== undefined && array !== null && args !== '') {
console.log('args', array);
const direction = args === 'desc' ? 1 : -1;
array.sort((a: any, b: any) => {
console.log('args', a);
if (a['lastUpdatedat'] < b['lastUpdatedat']) {
return -1 * direction;
} else if (a['lastUpdatedat'] > b['lastUpdatedat']) {
return 1 * direction;
} else {
return 0;
}
});
}
return array;
}
我的 Component ng 容器是这样的,我正在使用两个过滤器,一个用于搜索,另一个用于对特定 lastupdatedat 值(即时间戳)进行排序...
<ng-container *ngFor="let User of uLists | orderbyLastMessage:'uLists':true">