我正在尝试在Angular.js中创建一个过滤器,以检查项目的日期是否介于两个选定日期之间。我的问题是我需要在我的过滤器中使用现有的日期过滤器。我的代码如下所示,有没有办法将$ filter注入我的过滤器?
app.filter 'dateFilter', ['input', 'startDate', 'endDate', 'field', '$filter', (input, startDate, endDate, field, $filter) ->
if startDate or endDate
filteredItems = []
if startDate
filteredItems.push(record) for record in input when $filter('date')(record[field], 'shortDate') >= startDate
if endDate
filteredItems.push(record) for record in input when record[field] <= endDate
filteredItems
else
input
]
我试图错误地注入$ filter。这是现在有效的更新代码。
app.filter 'dateFilter', ['$filter', ($filter) ->
(input, startDate, endDate, field) ->
if startDate or endDate
filteredItems = []
if startDate
filteredItems.push(record) for record in input when $filter('date')(record[field], 'shortDate') >= startDate
if endDate
filteredItems.push(record) for record in input when $filter('date')(record[field], 'shortDate') <= endDate
filteredItems
else
input
]