В Angular2 У меня есть ngFor и вы хотите заказать 1 поле, но без создания собственной трубы.В Angular2 У меня есть ngFor и вы хотите заказать 1 поле
Есть ли какие-либо встроенные устройства, которые я мог бы использовать?
Это мой код:
<tr *ngFor="let item of listOfMessages" [ngClass]="{unread: item.hasUnreadMessages}">
Я хочу заказать по item.hasUnreadMessages.
Но я хочу простейший способ сделать это.
Я использую HTML5 с angular2 и машинописи
Моя попытка:
this.listOfMessages = this.listOfMessages.sort((item1:any, item2:any): boolean => this.compareByBool(item1, item2, "hasUnreadMessages"));
compareByBool = (item1: any, item2: any, fieldName: any): any =>{
return (item1[fieldName] === item2[fieldName] ? 0 : (item1[fieldName] ? -1 : 1));
}
Если это так: hasUnreadMessages то элемент должен быть в верхней части массива
Как вы, вероятно, отметили, угловое2 намеренно не имеет трубы orderBy (см. Https://angular.io/docs/ts/latest/guide/pipes.html). Они рекомендуют вам иметь дополнительный массив отсортированных элементов и отображать их. Будет ли это работать на вас? – Meir
yeh hows лучше всего сделать это? у вас есть пример lodash? – AngularM