次のようなオブジェクトがあります。
{
"03" : "Apple",
"02" : "Banana",
"01" : "Cranberry"
}
そして、それは私のng-repeatのキー(理にかなっている)によってそれを注文します。これにより、ラベルがアルファベット順になりません(「クランベリー」が最初)。リピーターを値(アルファベット順)で並べ替えるにはどうすればよいですか?
Ng-repeatにしたい順番で供給できますが、キーでソートします。私がそれを作ることができればnotがそれをするなら、それもうまくいくでしょう。
NgRepeatで配列を並べ替えるには orderBy filter を使用できますが、配列でのみ機能するため、ngRepeatで配列を使用する必要があります。
コントローラでは次のようになります:
$scope.myData = [
{
key: "01",
value: "Cranberry"
},
{
key: "02",
value: "Banana"
},
{
key: "03",
value: "Apple"
}
];
そしてhtmlで:
<div class="item" ng-repeat="item in myData|orderBy:'value'">{{item.value}}</div>