错误:InvalidPipeArgument:“无法将“ 27-08-2020”转换为日期”管道“ DatePipe”

时间:2020-09-28 08:12:51

标签: angular angular8

我需要在有角度的应用程序中格式化日期,所以我使用日期管道:我正在尝试许多自定义过滤器。

我用过:

<div class="id_text">{{ splitDate(row?.created_at) | date:'dd-MM-y'}}</div>
 splitDate(date) {
const data = date.split(' ');
return data[0];
}

我使用了角度过滤器

<div class="id_text">{{row?.created_at | date:'dd/MM/yyyy'}}</div>

但是在某个日期仍然显示相同的错误,但我只需要日期

enter image description here

enter image description here

响应:-

enter image description here

1 个答案:

答案 0 :(得分:2)

这是因为created_at具有无效的日期字符串,并且角度管道无法识别它。

您需要用此25-09-2020 11:04:16替换此2020/2/25 11:04:16,只需编写日期解析器方法即可。

  parseDate(date) {
   const parseDate = date.split('-');
   const parseTime = parseDate[2].split(' ');
   const parsedDate = `${parseTime[0]}/${parseDate[1]}/${parseDate[0]} ${parseTime[1]}`

   return parsedDate
 }

在模板中使用日期解析

<div class="id_text">{{ parseDate(row?.created_at) | date:'dd/MM/yyyy'}}</div>