Angular 和日期来自 PHP InvalidPipeArgument:'Unable to convert "[object Object]" into a date' 用于管道 'DatePipe'
Angular and date from PHP InvalidPipeArgument: 'Unable to convert "[object Object]" into a date' for pipe 'DatePipe'
我有用 Angular 9 编写的应用程序和 api 用 PHP 编写的应用程序。来自 PHP 中的控制器,我 return 具有 属性 finishDate 的对象列表。在 PHP 中,finishDate 分配给 DateTime:
$timeSheetsOrderDTO1 = new TimeSheetsOrderDTO;
$timeSheetsOrderDTO1->orderId = 62131;
$timeSheetsOrderDTO1->finishDate = new DateTime();
$timeSheetsOrderDTO1->count = 8;
TypeScript 中的 TimeSheetsOrderDTO:
export class TimeSheetsOrderDTO {
public orderId: number;
public finishDate: Date;
public count: number;
}
在 TypeScript (Angular) 中,我看到来自控制器的数据如下:
this.timesheetsOrders: Array(4)
0:
count: 8
finishDate: {date: "2020-12-26 15:49:15.052904", timezone_type: 3, timezone: "UTC"}
orderId: 62131
我想在html中显示finishDate
。当我有这样的代码时:
{{ timesheetsOrder.finishDate }}
我明白了:
当我这样写的时候:
{{ timesheetsOrder.finishDate | date : 'yyyy-MM-dd'}}
我收到错误:
core.js:6241 ERROR Error: InvalidPipeArgument: 'Unable to convert "[object Object]" into a date' for pipe 'DatePipe'
在您的尝试中,timesheetsOrder.finishDate
指的是整个对象而不是其中的日期 属性,这就是您收到错误的原因。
使用以下语法:
{{ timesheetsOrder.finishDate.date | date : 'yyyy-MM-dd'}}
我有用 Angular 9 编写的应用程序和 api 用 PHP 编写的应用程序。来自 PHP 中的控制器,我 return 具有 属性 finishDate 的对象列表。在 PHP 中,finishDate 分配给 DateTime:
$timeSheetsOrderDTO1 = new TimeSheetsOrderDTO;
$timeSheetsOrderDTO1->orderId = 62131;
$timeSheetsOrderDTO1->finishDate = new DateTime();
$timeSheetsOrderDTO1->count = 8;
TypeScript 中的 TimeSheetsOrderDTO:
export class TimeSheetsOrderDTO {
public orderId: number;
public finishDate: Date;
public count: number;
}
在 TypeScript (Angular) 中,我看到来自控制器的数据如下:
this.timesheetsOrders: Array(4)
0:
count: 8
finishDate: {date: "2020-12-26 15:49:15.052904", timezone_type: 3, timezone: "UTC"}
orderId: 62131
我想在html中显示finishDate
。当我有这样的代码时:
{{ timesheetsOrder.finishDate }}
我明白了:
当我这样写的时候:
{{ timesheetsOrder.finishDate | date : 'yyyy-MM-dd'}}
我收到错误:
core.js:6241 ERROR Error: InvalidPipeArgument: 'Unable to convert "[object Object]" into a date' for pipe 'DatePipe'
在您的尝试中,timesheetsOrder.finishDate
指的是整个对象而不是其中的日期 属性,这就是您收到错误的原因。
使用以下语法:
{{ timesheetsOrder.finishDate.date | date : 'yyyy-MM-dd'}}