我有以下代码用于在PrimeNG表中实现日期范围过滤器。
<th class="filter_header">
<p-calendar
(onSelect)="historyTable.filter($event,'release_datetime', 'dateRangeFilter')"
placeholder="Search by release date"
[appendTo]="historyTable"
[(ngModel)]="rangeDates"
</p-calendar>
</th>
在组件中,我定义了FilterUtils
,如下所示:
FilterUtils['dateRangeFilter'] = (value, filter): boolean => {
if (filter === undefined || filter === null) {
return true;
}
if (value === undefined || value === null) {
return false;
}
console.log(value);
if (this.rangeDates[0] <= value && this.rangeDates[1] >= value) {
return true;
}
}
但这不起作用。如果有人可以指导我正确的方向,那将会有所帮助。
我得到value
的定义。我已经尝试过使用$event.target.value
,但是它也不起作用。
答案 0 :(得分:0)
尝试如下更新您的日历。除了使用$event
之外,还需要rangeDates
作为过滤器。
<p-calendar
[(ngModel)]="rangeDates"
(onSelect)="historyTable.filter(rangeDates,'release_datetime', 'dateRangeFilter')"
placeholder="Search by release date"
[appendTo]="historyTable">
</p-calendar>