如何在重复值过滤时使用角度“过滤器”过滤器?

时间:2016-12-08 09:48:12

标签: javascript angularjs filter ng-repeat

我正在写一个角度ng-repeat表达式如下

<tr ng-repeat='instance in instances | filter : search'>
    <td>{{$index}}</td>
    <td>{{instance.Duration | duration}}</td>
    <td>{{instance.Start | mediumDate}}</td>
</tr>

持续时间过滤器是我编写的自定义过滤器。它将秒数转换为天数。例如,如果instance.Duration为172800,那么过滤后的值将为2(即172800 /(24 * 60 * 60))

现在的问题是,ng-repeat过滤器仍然适用于原始值(即172800)。

如何根据“持续时间”过滤结果制作ng-repeat“过滤器”过滤器来过滤结果?

这是一个显示问题的小提琴 http://jsfiddle.net/pupudu/00qegfkc/

1 个答案:

答案 0 :(得分:1)

再创建一个名为formattedInstances的对象,它将是Instances的副本,但是将格式化Duration和Start(应用过滤器后获得的格式相同)。在ng-repeat中使用此formattedInstances。