javascript - ngRepeat 迭代 AngularJS 中的数组对象

标签 javascript arrays angularjs angular1.6

我正在尝试弄清楚如何使用 ngrepeat 迭代数组

如果我有如下所示的数据数组

{
  "People": [{
      "name": "Andrew Amernante",
      "rating": 3,
    },
    {
      "name": "Frank Wang",
      "rating": 5,
    },
    {
      "name": "Chang Wang",
      "rating": 5,
    }
  ]
}

在 Controller 中,我有这些代码片段。

app.controller('mainController', function($scope, $http) {
  $http.get('people.json').
  then(function onSuccess(response) {
    console.log(response);
    $scope.peoples = response.data;

  }).
  catch(function onError(response) {
    console.log(response);
  });
});

而且,我想迭代数组并在列表中显示三个名称。

<ul class="nav">
  <li ng-repeat="obj.peoples track by $index">
    <a href="#/">{{obj.name}}</a>
  </li>
</ul>

但是,我无法获取名字,对此有什么想法吗?

仅供引用 - 我在这里使用 Angular 1.6.5 版本。

Plunkr代码在这里

最佳答案

您需要修复 HTML 代码。

而不是 ng-repeat="obj.peoples track by $index" 应该是 ng-repeat="obj in peoples.People track by $index"

请参阅下面的演示。

angular.module('app', [])
  .controller('mainController', function($scope, $http) {
    // mocked, equivalente to `$scope.peoples = response.data`
    $scope.peoples = {
      "People": [{
          "name": "Andrew Amernante",
          "rating": 3,
        },
        {
          "name": "Frank Wang",
          "rating": 5,
        },
        {
          "name": "Chang Wang",
          "rating": 5,
        }
      ]
    };
  });
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>

<div ng-app='app' ng-controller='mainController'>
  <ul class="nav">
    <li ng-repeat="obj in peoples.People track by $index">
      <a href="#/">{{obj.name}}</a>
    </li>
  </ul>

</div>

关于javascript - ngRepeat 迭代 AngularJS 中的数组对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51268595/

相关文章:

javascript - 重绘 d3 力布局而不移动节点

javascript - JavaScript 中的数字排序代码错误

arrays - Powershell:作为函数参数的 PSCustomObject 数组意外更改

javascript - 识别用户的 ionic 事件来自 navCtrl.pop()

JavaScript 将变量名转换为字符串

javascript - <TR>标签不订阅事件

arrays - ColdFusion 处理数据表 "sent parameters"

c - 如何将 typedef 结构传递给函数?

angularjs - 使用带有 Angular $http 的 curl 请求

javascript - AngularJS $templateCache 无法处理 url 参数