如何在 Angular 中处理 LocaleDateTime 后端响应



>我有一个表格行作为

<ng-container cdkColumnDef="date">
<mat-header-cell *cdkHeaderCellDef fxFlex="10%">Date</mat-header-cell>
<mat-cell *cdkCellDef="let payroll"
fxFlex="10%"> {{payroll.creationDateTime}}</mat-cell>
</ng-container>

在这里,我想以逻辑格式显示日期,但来自后端的响应是:

{
"id": 5,
"employeeId": 42198,
"budgetGroupId": 15541,
"creationDateTime": {
"year": 2018,
"month": "MARCH",
"monthValue": 3,
"dayOfMonth": 1,
"dayOfWeek": "THURSDAY",
"dayOfYear": 60,
"hour": 19,
"minute": 24,
"second": 3,
"nano": 190000000,
"chronology": {
"id": "ISO",
"calendarType": "iso8601"
}
}
}

我怎样才能以良好的格式从那里获取该 creationDateTime,而无需将其所有内在值一个接一个地连接起来?

只需使用Date对象的重载。重载可以在 mdn 文档中看到:

新日期(年、月索引 [、天 [、小时 [、分钟 [、秒 [, 毫秒]

]]]](;

let dateObject = {
"id": 5,
"employeeId": 42198,
"budgetGroupId": 15541,
"creationDateTime": {
"year": 2018,
"month": "MARCH",
"monthValue": 3,
"dayOfMonth": 1,
"dayOfWeek": "THURSDAY",
"dayOfYear": 60,
"hour": 19,
"minute": 24,
"second": 3,
"nano": 190000000,
"chronology": {
"id": "ISO",
"calendarType": "iso8601"
}
}
};
var date = new Date(dateObject.creationDateTime.year, 
dateObject.creationDateTime.monthValue - 1, 
dateObject.creationDateTime.dayOfMonth,
dateObject.creationDateTime.hour, 
dateObject.creationDateTime.minute, 
dateObject.creationDateTime.second);
console.log(date);

最新更新