嵌套的ng-repeat在内循环上失败

时间:2016-08-02 16:52:35

标签: angularjs

我无法尝试从api提供数据。数据来自json响应,其组织方式如下API from Guild Wars for character data

我发出了一个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>   

实际上,并非所有库存数据都是迭代的,每次结果都会有所不同

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

1 个答案:

答案 0 :(得分:0)

我发现了问题,这是一个重复的项目问题:( 我通过在ng-repeat中使用track-by $ index选项来“解决”它,这将绕过重复ID的问题。