我的HTML代码如下所示:

<div class="content">
  <div class="panel columns small-12" ng-repeat="(key, value) in rse| groupBy: 'unixTime'">
      <h5>{{key}}</h5>
      <li ng-repeat="se in value">
        {{se.name}} ({{se.times}} times)
      </li>
  </div>
</div>


分组依据是由https://github.com/a8m/angular-filter提供的

将提供的数据是json对象列表的示例,如下所示:

[
    {
        "name": "test",
        "unixTime": "1422748800",
        "uiTime": "Monday 6th December 2015",
        "times": "1"
    },
    {
        "name": "test",
        "unixTime": "1423094400",
        "uiTime": "Tuesday 1th December 2015",
        "times": "1"
    },
    {
        "name": "test",
        "unixTime": "1423267200",
        "uiTime": "Wednesday 2th December 2015",
        "times": "1"
    }
]


我面临的问题是将UNIX时间分组为MS以来,因为从纪元起我以所需的正确顺序获得了时间,但是后来我无法在H5标记中显示用户友好的日期,因此我必须在LI重复中显示它这意味着该日期将被多次显示。

如果我然后按时间将组更改为“ uiTime”,则这是ms的用户友好版本,因为从纪元起它以错误的顺序显示它们,例如字母顺序显示“星期一,星期二,星期三”,这显然是错误的顺序。

我该如何分组,但使用不同的值作为键,甚至将毫秒从epoch转换为视图中我友好的UI友好日期字符串(我知道这是一种不好的做法,因为我在服务层中执行此操作并在意见不佳)。

希望有人能帮忙。
谢谢

最佳答案

你可以写

<div class="content">
  <div class="panel columns small-12" ng-repeat="(key, value) in rse| groupBy: 'unixTime'">
      <h5>{{value[0].uiTime}}</h5>
      <li ng-repeat="se in value">
        {{se.name}} ({{se.times}} times)
      </li>
  </div>
</div>

09-25 21:31