如何基于对象显示';angularjs中的s键

如何基于对象显示';angularjs中的s键,angularjs,Angularjs,在angular中,如果我有一个对象,例如: [{ id : 1, subject : BIO, class : '101' , time : 'mon' }, { id : 2, subject : BIO, class : '101', time : 'tues' }, { id : 3, subject : MTH, class : '101-00', time : 'wed' }, { id : 4,

在angular中,如果我有一个对象,例如:

[{
  id : 1, 
  subject : BIO, 
  class : '101' , 
  time : 'mon'
 },
 {
  id : 2, 
  subject : BIO, 
  class : '101', 
  time : 'tues' 
 },
 { 
  id : 3, 
  subject : MTH, 
  class : '101-00', 
  time : 'wed'
 },
 {
  id : 4, 
  subject : MTH, 
  class : '101',
  time : 'tues'
 },
 {
  id : 5, 
  subject : BIO, 
  class : '102', 
  time : 'sat' 
 },
我想在每个主题标题下显示所有的结果,是否有我可以使用的指令或我需要制定的东西

是否有按类别基于键值对输出的方法

所以我的输出是


生物 所有课号和时间


MTH 所有数学课。

最简单的方法是使用
过滤器
覆盖
ng repeat
。如下所示:

var-app=angular.module('plunker',[]);
应用程序控制器('MainCtrl',函数($scope){
$scope.classes=[{
id:1,
主题:'生物',
班级:'101',
时间:周一
}, {
id:2,
主题:'生物',
班级:'101',
时间:周二
}, {
id:3,
主题:“MTH”,
班级:'101-00',
时代周刊:“wed”
}, {
id:4,
主题:“MTH”,
班级:'101',
时间:周二
}, {
id:5,
主题:'生物',
班级:'102',
时间:“周六”
}, ]
});

生物:
{class.subject}{{class.class}{{{class.time}

MTH: {class.subject}{{class.class}{{{class.time}
所有: {class.subject}{{class.class}{{{class.time}
最简单的方法是在
ng repeat
上使用
过滤器。如下所示:

var-app=angular.module('plunker',[]);
应用程序控制器('MainCtrl',函数($scope){
$scope.classes=[{
id:1,
主题:'生物',
班级:'101',
时间:周一
}, {
id:2,
主题:'生物',
班级:'101',
时间:周二
}, {
id:3,
主题:“MTH”,
班级:'101-00',
时代周刊:“wed”
}, {
id:4,
主题:“MTH”,
班级:'101',
时间:周二
}, {
id:5,
主题:'生物',
班级:'102',
时间:“周六”
}, ]
});

生物:
{class.subject}{{class.class}{{{class.time}

MTH: {class.subject}{{class.class}{{{class.time}
所有: {class.subject}{{class.class}{{{class.time}
您可以使用角度过滤器库中的“groupBy”过滤器,它完全满足您的需要:

您可以使用角度过滤器库中的“groupBy”过滤器,它完全满足您的需要:

同意,这比使用两个单独的块更干净。。。当您需要特定的顺序来显示块时,@Claies响应将非常有用。同意,这比使用两个单独的块更干净。。。当您需要特定的顺序来显示块时,@Claies响应将非常有用。