2016-08-02 48 views
0

我无法尝试从api显示数据。数据进来一个json响应组织像这样API from Guild Wars for character data在内部循环中嵌套的ng-repeat失败

我做了一个angularJS请求,并使用一系列嵌套的ng-repeats来呈现数据,但最内层的循环库存数据没有正确显示。只有一部分被迭代。

这是我的代码:

<table> 
    <tr ng-repeat="char in $ctrl.chars | orderBy:'-age'"> 
    <td> 
     <table id="charTotal">  
     <ng-include src="'charBasic.html'"></ng-include> 
     <ng-include src="'charBags.html'"></ng-include> 
     </table> 
    </td> 
    </tr> 
</table> 

忘了包括charBasic.html:

<tr> 
    <td> 
    <table id="charBasic" class="charBasic"> 
     <tr> 
     <td>{{char.name}}</td> 
     <td>{{char.race}}</td> 
     <td>{{char.profession}}</td> 
     <td>{{char.level}}</td> 
     <td>{{char.deaths}}</td> 
     <td> 
     <table> 
      <tr ng-repeat="craft in char.crafting"> 
      <td>{{craft.discipline}}</td> 
      <td>{{craft.rating}}</td> 
      </tr> 
     </table> 
     </td> 
    </tr> 
    </table> 
</td> 
</tr> 

charBags.html:

<tr> 
    <td> 
    <table id="charBags" class="charBags" border="1"> 
     <tr ng-repeat="bag in char.bags"> 
     <td>{{bag.id}}</td> 
     <td>{{bag.size}}</td> 
     <td ng-repeat="inv in bag.inventory"><ng-if "{{inv}}">{{inv.id}}</ng-if></td> 
     </tr> 
    </table>    
    </td> 
</tr> 

因为它是,并不是所有的库存数组迭代,并且结果每次都有所不同

什么是迭代这些数据的正确方法?

+0

我'v从来没有使用ng-if作为一个元素,但是你需要ng = if和{{inv}}之间的'='吗? – Rob

+1

我不知道你在这里尝试着什么:' {{inv.id}}' – developer033

+0

我已经添加了ng-if是因为我认为null值打破了执行,但它没有区别。尝试添加= now,但它没有改变任何东西。无论 apachai

回答

0

我发现了这个问题,这是一个重复的项目问题:( 我通过跟踪吴重复内$指数期权,这将绕过重复的ID的问题“解决”了。