我尝试按管道日期以特定格式显示日期,然后出现此错误:
Uncaught Error: InvalidPipeArgument: 'Unable to convert "25/01/2019" into a date' for pipe 'e'
at Xe (main.fc4242d58c261cf678ad.js:1)
at e.transform (main.fc4242d58c261cf678ad.js:1)
at main.fc4242d58c261cf678ad.js:1
at main.fc4242d58c261cf678ad.js:1
at es (main.fc4242d58c261cf678ad.js:1)
at Cs (main.fc4242d58c261cf678ad.js:1)
at Object.updateRenderer (2.afd83a5d88a3f927f011.js:1)
at Object.updateRenderer (main.fc4242d58c261cf678ad.js:1)
at $a (main.fc4242d58c261cf678ad.js:1)
at us (main.fc4242d58c261cf678ad.js:1)
我从string
“ 25/01/2019”收到了来自API的日期信息,然后像这样显示在html上:
{{ item.date | date: 'dd MMM yyyy' }}
我不知道我是否犯了一些错误。但是,我想做的是用另一种格式显示日期,而日期输入是字符串类型。
我可以这样做吗?如果是,在这种情况下怎么办?非常感谢。
答案 0 :(得分:2)
doc说
日期表达式:Date对象,数字(自UTC时代以来的毫秒数)或ISO字符串
25/01/2019不是ISO字符串,2019-01-25是。注意:在角度通用包装盒之外还有其他日期记录管,或者您可以继续使用。
答案 1 :(得分:0)
@David Palita回答的补充,
首先,您应该将String
转换为Date
,然后可以使用您提到的DatePipe
,
item.date = parseDate(item.date, 'dd/mm/YYYY');
如果您通过stackblitz重现问题,我们可以为您的案例提供更好的指导。
我还建议您检查this这样的问题。