2017-01-13 11 views
1

Angular2を使用しています。オブジェクトのプロパティに基づいてオブジェクトの配列をソートしたいと思います。私はスペースの制限のためにそれらのオブジェクトを改ページする必要があります。だから、私はNgForのコンテキストでPipeを使いたくありません。 DOMにレンダリングする前にソート機能を実装したいだけです。誰かが何らかの情報を持っているなら、いくらかガイドを与えることができますか?私が見つけたものは、PipeTransformを使用していました。だから、私はあなたに尋ねています。は、Angular2でオブジェクトの配列を並べ替える機能を実装する

+3

JSのトライのArray.sort()https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Array/ソート – rashfmnb

+1

ありがとうございました!助けになる。 –

答えて

1

アンダースコアは_.sortByの方法を使用できます。

コードの例:

_.sortBy(arr, function(o) { return o.start.dateTime; }) 
+0

ありがとう!助けになる。 –

+0

@Annaあなたの歓迎 – Manish

1

は、JSのarray.sort()を試みる

例arr.sort()

var fruit = ['cherries', 'apples', 'bananas']; 
fruit.sort(); // ['apples', 'bananas', 'cherries'] 

例arr.sort(compareFunctionは)

var items = [ 
    { name: 'Edward', value: 21 }, 
    { name: 'Sharpe', value: 37 }, 
    { name: 'And', value: 45 }, 
    { name: 'The', value: -12 }, 
    { name: 'Magnetic', value: 13 }, 
    { name: 'Zeros', value: 37 } 
]; 

// sort by value 
items.sort(function (a, b) { 
    return a.value - b.value; 
}); 

// sort by name 
items.sort(function(a, b) { 
    var nameA = a.name.toUpperCase(); // ignore upper and lowercase 
    var nameB = b.name.toUpperCase(); // ignore upper and lowercase 
    if (nameA < nameB) { 
    return -1; 
    } 
    if (nameA > nameB) { 
    return 1; 
    } 

    // names must be equal 
    return 0; 
}); 
関連する問題