繁体   English   中英

需要在ng-repeat AngularJs中显示更深的项目

[英]need to display deeper item in ng-repeat AngularJs

从服务器获取对象。 看起来像这样:

"courses": [
      {
        "id": 1,
        "name": "piano",


        "classes": [
          {
            "id": 1,
            "name": "piano1",

          },
          {
            "id": 2,
            "name": "piano2",

          }
        ],
        "classes_count": 2,
        "feedbacks_count": 4
      },
]

JS:我可以将数据发送到Scope

httpService.getService(url, data).then(function(res) {
    $scope.datas = res.body.courses;
    console.log($scope.datas);
})

我需要在ng-repeat中打印类ID。 尝试这样做

<ul  class="dropdown-list" style="display: none;">
    <li ng-repeat="course in datas | filter:{'id': showprofile}:true ">{{course.classes.id}}</li>
</ul>

但是当我打印{{course.classes}}并得到一个包含2个对象的数组时,它就可以工作。 如何显示在“ li”元素的course.classes.id中?

您需要为嵌套元素添加另一个循环

<ul  class="dropdown-list" style="display: none;">
   <li ng-repeat="course in datas" ng-if='$first'> {{course.id}}</li>//
      <ul ng-if="course.classes.length">
         <li ng-repeat="classes in course">     {{course.classes.id}}</li>
      </ul>
 </ul>

您在数组中有一个数组,因此有2个ng-repeats:第一个遍历课程,第二个遍历课程。

<ul ng-repeat="course in datas" class="dropdown-list" style="display: none;">
     <li ng-repeat="class in course.classes">{{class.id}}</li>
</ul>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM