Javascript AngularJS按对象属性分组

Javascript AngularJS按对象属性分组,javascript,angularjs,Javascript,Angularjs,我有一个目标: $scope.items = [{ "category": { "code": "10", "description": "Movies" }, "item": {"code": "421", "description": "Noriko's Dinner Table" } },{ "category": { "code": "10", "description": "Movies" },

我有一个目标:

  $scope.items = [{ 
    "category": { "code": "10", "description": "Movies" },
        "item": {"code": "421", "description": "Noriko's Dinner Table" }
                  },{ 
    "category": { "code": "10", "description": "Movies" },
        "item": {"code": "511", "description": "Avatar" }
                  },{ 
    "category": { "code": "45", "description": "Books" },
        "item": {"code": "93", "description": "Divergent" }
                  },{ 
    "category": { "code": "45", "description": "Books" },
        "item": {"code": "72", "description": "Sense and Sensibility" }
                  },{ 
    "category": { "code": "33", "description": "TV Shows" },
        "item": {"code": "11", "description": "The Walking Dead" }
                  },{ 
    "category": { "code": "33", "description": "TV Shows" },
        "item": {"code": "60", "description": "The Bates Motel" }
                  }];
我正在尝试将它们分组,以便列表可以整齐地组织和查看。像这样:

但正如您所看到的,类别描述出现在每个项目上。我该怎么办

  <ul>
    <li ng-repeat="item in items track by $id(item)"><div>{{item.category.description}}</div>{{item.item.description}}</li>
  </ul>
  • {{item.category.description}{{item.item.description}

现场演示:

您希望执行以下操作:

<ul ng-repeat="(key, value) in items | groupBy: 'category.description'">
 {{ key }}
   <li ng-repeat="item in value">
     {{ item.item.description }} 
   </li>
</ul>
    {{key}}
  • {{item.item.description}}

利用内置的angulars
groupBy
filter

您希望执行以下操作:

<ul ng-repeat="(key, value) in items | groupBy: 'category.description'">
 {{ key }}
   <li ng-repeat="item in value">
     {{ item.item.description }} 
   </li>
</ul>
    {{key}}
  • {{item.item.description}}

利用内置的angulars
groupBy
filter

我很困惑-plunker看起来和你说的完全一样我很困惑-plunker看起来和你说的完全一样