2016-11-25 8 views
-2

2つのng-repeatディレクティブ内にあるdivの一意のIDに影響を与えることはできますか?怒鳴るの例を参照してください:2 ng-repeatの一意のID(AngularJS)

<!--data: [[{id: 'A'},{id: 'B'},{id: 'C'}], [{id: 'X'},{id: 'Y'}]]--> 
<div ng-repeat = "item in data"> 
    <div ng-repeat = "sub-item in item"> 
     <div id = "{{$index}}"> 
    </div> 
</div> 

予想される出力:

<!--first ng-repeat--> 
<div id = "1"> 
<div id = "2"> 
<div id = "3"> 
<div id = "4"> <!--start second array--> 
<div id = "5"> 

ない:

<div id = "1"> 
<div id = "2"> 
<div id = "3"> 
<div id = "1"> <!--start second array--> 
<div id = "2"> 

アップデート:私はすることによって追跡したり$親とは思わない$インデックスはこの使用のために動作します。正確にインクリメントされたカウンタを得るために、各サブアレイの長さを計算しなければならないことは明らかです。私は現在、2つのng-initの組み合わせを試しています。私が働いて何かを得れば、私は

私は最終的にそれが動作するようになった
+0

トラックを使用してみることができます:http://stackoverflow.com/questions/22761340/understanding-the-ngrepeat-track-by-expression –

+0

これはかなり簡単です。あなたは何を疲れましたか? – 1252748

+0

@ 1252748私は両方のng-repeatの中で$ parentと$ indexとng-initの組み合わせを試していますので、正確なカウンタを得ることはできますが、運がない場合は投稿を確認してください –

答えて

0

、ここで私の試みである記事を更新します:あなたはより適切な解決策を持っている場合

<div ng-repeat = "item in data" ng-init = "count = 0"> 
<div ng-repeat = "sub-item in item" ng-init="count = count + data[$parent.$index -1].length"> 
    <div id = "{{count+$index+1}}"> 
</div> 

が編集してお気軽