ng-repeat不是在数组上迭代

时间:2015-03-17 19:18:40

标签: javascript angularjs angularjs-scope angularjs-ng-repeat

简化HTML:

<div ng-repeat="transfer in transfers">
    <table class="table">
        <thead>
            <tr>
                <th translate>Description {{ transfer.entries | json }}</th>
            </tr>
        </thead>

        <tbody>
            <tr ng-repeat="entry in transfer.entries">
                <td>{{ entry.description }}</td>
            </tr>
        </tbody>
    </table>
</div>

简化JS:

      $scope.transfers = transfers;
      $scope.total = transfers.meta.count;

      for (var i = 0, j = $scope.transfers.length;
           i < j;
           i++) {

        if (!$scope.transfers[i].hasOwnProperty('entries')) {
          $scope.transfers[i]['entries'] = [];
        }

        $scope.transfers[i]['entries'].push({
          description: 'A description'
        });
      }

第一个{{ transfer.entries }}(&#34;描述&#34右侧的那个;)显示transfers[i].entries的正确值,类似[{"description":"A description"}],但对于某些人来说因为ng-repeat没有迭代该数组。

概括说明:

  • 他们的范围相同。
  • 常规绑定工作正常。
  • ng-repeat似乎无法正确捕获transfer.entries值。

那么,我做错了什么?

1 个答案:

答案 0 :(得分:0)

好吧,好像我碰到了一个虫子。

https://github.com/michaelbromley/angularUtils/issues/92

困难的部分是确定那个指令是有问题的人。

谢谢大家的时间。