JavaScript | AngularJS:按日期过滤结果过滤项目

时间:2015-09-04 04:45:55

标签: javascript angularjs date filter ng-repeat

按日期过滤结果筛选项目

ng-repeat内部使用createdAt过滤器过滤| date属性。在ng-repeat内,item in items| filter获取term。换句话说,我的代码看起来像这样:

<input placeholder="search" ng-model="term" />

<div ng-repeat="item in items | filter:term">
    {{item.createdAt | date}}
</div>

非常基本。 date过滤器的{ISO 1}日期为2015-09-03T00:12:43.107Z,并返回Sep 2, 2015之类的内容。

期望的情景:

item显示已过滤的createdAt文本,例如 2015年9月2日。 用户搜索“2” - 并向下缩小数组结果,仅显示按日期过滤结果符合其条件的项目。

用户刚刚按 date 完成了过滤项目 - 但更重要的是,基于{{1}过滤了项目按用户可见的日期过滤器的返回值。

有没有办法在不编写自定义过滤器的情况下完成此操作 - 或者我需要使用利用date&amp; $filter('filter')

可能是这样的:

$filter('date')

我想这也应该知道item in items | filter:{date: (term | date:'ISO'), name: term} // converts term back to ISO for matching (ideally) 是否是一个日期,然后再尝试过滤它,因为term也应该过滤term items上也有匹配。 编辑:您可以通过item.name过滤器运行文本值并返回相同的值。

提前致谢

0 个答案:

没有答案