gpt4 book ai didi

javascript - 如何修复 Angular 日期选择器过滤器

转载 作者:太空狗 更新时间:2023-10-29 18:27:30 24 4
gpt4 key购买 nike

我正在尝试过滤 FROM 和 TO 将显示数据的日期,

但是当 FROM 和 TO 相同时,它不会显示当前选择的日期。

示例 FROM: 08-01-2019 00:00:00 | 至:08-29-2019 13:00:00它不显示数据 2019-08-28 12:36:01,但是当我尝试设置 FROM: 06-14-2019 00:00:00 | TO: 08-29-2019 13:00:00 显示所有数据

templog.component.ts

columnDefs: any = [
{ headerName: 'Date Time', field: 'dateandtime' },
{ headerName: 'Location', field: 'sensor' },
{ headerName: 'Temperature', field: 'temperature' },
{ headerName: 'Humidity', field: 'humidity' }
];

submitForm(): void {
this.rowData = record.default.records;

const dateStart = format(this.validateForm.value.datePickerStart, 'YYYY-MM-DDTHH:mm:ss');
const dateEnd = format(this.validateForm.value.datePickerEnd, 'YYYY-MM-DDTHH:mm:ss');

for(let i = 0;i < this.rowData.length; i++){
if (isBefore(this.rowData[i].dateandtime, dateStart) ||
isAfter(this.rowData[i].dateandtime, dateEnd )) {
this.rowData = this.rowData.splice(i, 0);
}
}
}

templog.json

{
"records": [
{
"dateandtime": "2018-06-14 01:38:02",
"sensor": "Sewing Line1",
"temperature": "25.8",
"humidity": "99.9"
},
{
"dateandtime": "2018-06-14 01:36:01",
"sensor": "Sewing Line1",
"temperature": "25.8",
"humidity": "99.9"
},
{
"dateandtime": "2018-06-14 01:36:01",
"sensor": "Heat Seal Area",
"temperature": "25.9",
"humidity": "99.9"
},
{
"dateandtime": "2019-08-28 12:36:01",
"sensor": "Heat Seal Area",
"temperature": "25.9",
"humidity": "99.9"
}
]
}

最佳答案

您的 for 循环可以使用 filter 进行简化

export interface MyRecord {
dateandtime: string,
sensor: string,
temperature: string,
humidity: string
}

public rowData: MyRecord[] = [];

submitForm(): void {
this.rowData = record.default.records;

const dateStart = format(this.validateForm.value.datePickerStart, 'YYYY-MM-DDTHH:mm:ss');
const dateEnd = format(this.validateForm.value.datePickerEnd, 'YYYY-MM-DDTHH:mm:ss');

this.rowData = this.rowData.filter((data: MyRecord) => {
// keep data which are not out of date-bound
return !isBefore(data.dateandtime, dateStart) && !isAfter(data.dateandtime, dateEnd);
});
}

关于javascript - 如何修复 Angular 日期选择器过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57710679/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com