我有一个称为current_item.get_user_history()的JS函数,该函数通过进行调用和API调用返回一个数组,其外观与此类似:

things[0]:
 thing_id: 5
 user_id: 23
 paddle_no: 1234
 item_id: 893
 price: 5000

things[1]:
 thing_id: 4
 user_id: 67
 paddle_no: 6743
 item_id: 893
 price: 4500

... and so on


我希望能够从该数组中获取数据以使用ng-repeat填充表。

<div class="bid_history">
      <table>
        <tr>
          <th>
            Column 1
          </th>
          <th>
            Column 2
          </th>
          <th>
            Column 3
          </th>
        </tr>
        <tr ng-repeat="thing in current_item.get_user_history() track by thing.id">
        {{thing.user_id}} {{thing.price}}
        </tr>

      </table>
  </div>


由于某种原因,什么都没有渲染,并且似乎做了很多重复,因为在chrome控制台中出现了无法阻止的错误。感谢您提供任何帮助,以确切解释一个人如何使用ng-repeat

最佳答案

您不能使用在$digest()中触发$http的函数(如$timeoutng-repeat)。它导致无限的$digest()循环。

有以下解释:

https://github.com/angular/angular.js/issues/705angular Infinite $digest Loop in ng-repeat

我之前犯了同样的错误:)

Infinite loop when ng-repeat/ng-class calls a function which calls $http

您必须先保存current_item.get_user_history()数据,然后使用ng-repeat调用数据。

scope.things= urrent_item.get_user_history();

<tr ng-repeat="thing in things track by thing.id">

关于javascript - 使用ng-repeat用来自数组的数据填充表行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36226766/

10-16 23:38