2017-12-28 7 views
1

私はJSON形式のデータを持っている:ioni2 angular2の最新の日付または古い日付によるデータのリスト?

[{date: 2017-10-18T03:00:00+03:00 , name : 'A'}, 
{date: 2017-11-18T03:00:00+03:00 , name : 'B'}] 

最古の日付に最新の日付から、これらのデータを表示するので、どのように。 結果は次のようになります。

B 
A 

Bは、最新

+0

最新のものを選択してください。 – subodh

+0

はい私はそれが日付に基づいているが、それをどのようにソートするかを知っています。最新の日付を最初に表示する方法。上記のデータは例ですが、私は10個のオブジェクトを持っていますが、 –

+0

を「lodash」からインポートすることができます。 let sortedData = _.orderBy(yourData、['date']、['desc']); –

答えて

0

あるので、あなたは以下のような独自のパイプを作成することができます。次に、htmlでパイプを| arraySort:['date'、 'DESC']

import { Pipe, PipeTransform } from '@angular/core'; 
import * as _ from 'lodash'; 

@Pipe({ 
    name: 'arraySort' 
}) 
export class ArraySortPipe implements PipeTransform { 

    transform(array: Array<{}>, args: string[]): Array<string> | Array<{}> { 

     array = array || []; 

     if (typeof args === 'undefined' || args.length !== 2) { 
      return array; 
     } 

     const [key, direction] = args; 

     if (direction !== 'ASC' && direction !== 'DESC') { 
      return array; 
     } 

     return _.orderBy(array, (item:any) => item[key], direction.toLowerCase()); 
    } 
} 
関連する問題