2016-08-02 21 views
0

AngularJSを使用して、3つの異なるjsonファイルをhtmlページに解析しました。名「NM」に依存jsonファイルのデータを特定の順序で取得する方法は?

工場コード

app.factory('myapp', ['$http', function($http) {   
function getLists() { 
    var tab = ['url1', 'url2', 'url3']; 
    var list = []; 
    for(i = 0; i < tab.length; i++) { 
     $http.get(tab[i]) 
     .then(function(res) { 
      list.push(res.data); 
     }); 
    } 
    return list; 
} 

return { 
    getLists: getLists 
}; 
]); 

私がしたいことは、性別によって異なるファイルのデータを表示することです(女性/男性): はここに私のコードです。その後、女の子の名前など最初の行、2行目の2つ目の最初のURLの男の子【選択データの名前...

HTMLコード:

<tr ng-repeat="d in list"> 
    <td>{{d.nm}}</td> 
    <td>{{d.cty}}</td> 
    <td>{{d.hse}}</td> 
    <td>{{d.yrs}}</td> 
</tr> 

私はおよそthinked私が女の子の名前と男の子の名前を指定するコントローラーでifテストを実行しますが、それを行う方法がわかりません 何をすればよいですか?

+2

ng-repeatでorderByを使用してください。 – Weedoze

+0

@Weedoze orderByは私にアルファベット順です。私は3つの名前を持っていますビル、サラ、スージー私はこの注文をします サラ Suzy ビル 女の子の名前は男の子の名前 –

+1

性別を区別するフィールドがありますか? –

答えて

0

を働いたとして、私はIDを作成しました。次に、名前のid 'にはorderByを渡します。

<tr ng-repeat="d in list| orderBy:ID"> 

</tr> 
0

AngularにはorderByディレクティブがあり、それをng-repeatの中で使用してデータを並べ替えることができます。

そのようにしてください。

genderFieldとnameFieldを適切な名前に置き換えてください。

<tr ng-repeat="d in list| orderBy:['genderField','nameField']"> 
    <td>{{d.nm}}</td> 
    <td>{{d.cty}}</td> 
    <td>{{d.hse}}</td> 
    <td>{{d.yrs}}</td> 
</tr> 

Reference

0

@tommocコメントで私を提案し、それはあなたが名前のためのIDを与えることができます:)

+0

あなたは明示的にどのように書くことができますか?彼が将来自分のコメントを削除するとどうなるでしょうか? – Dejell

+0

実際、私はそれが男の子の名前なら、私が持っている名前に応じてテストを工場で行った。Id = 2それは女の子ならId = 2、その後ng-repeatで注文するよID: –

+0

投稿してくださいあなたのコードは答えの中にあります。 – Dejell

関連する問題