DatePipe 转换显示错误的日期格式

Posted

技术标签:

【中文标题】DatePipe 转换显示错误的日期格式【英文标题】:DatePipe transform shows wrong date format 【发布时间】:2021-12-25 14:48:00 【问题描述】:

我正在使用 Angular 版本 12 和 datePipe.transform,我在字符串中以 dd/MM/yyyy 格式获取日期,我想在我使用 Angular 材料日期的反应形式中绑定该日期(以编辑表单)选择器Basic Angular Date picker

Demo

我确定我做错了什么,但我不知道是什么?谁能帮帮我?

【问题讨论】:

stackblitz.com/edit/… 【参考方案1】:

只要改变这个:

    const CreatedDate1 = this.datePipe.transform(CreatedDate, 'long');

P.S:您使用的是字符串“09/11/2021”而不是格式化变量“CreatedDate”。

顺便说一句,作为一条建议,在 Angular 中使用“CamelCase”来命名变量和常量(在您的示例中为“createdDate”)是一个好习惯,并保留“PascalCase”(作为“CreatedDate” ') 对于接口/类/... 我留下了一篇关于它的文章HERE 再见!

【讨论】:

奇怪!如果我使用“long”,我可以看到 11 月,但不幸的是,我无法在日期选择器中绑定长格式 - 它需要我在 DEMO 'yyyy-dd-MM' 中提到的某些日期格式。如果我使用该格式,它将显示 9 月在日期选择器中!当“长”格式在控制台中显示正确结果时! @Juan Vicente Berzosa Tejero 有什么想法吗? 在 Angular 材质日期选择器中绑定日期的任何其他方式? 你的答案是对的。但它无法帮助我绑定价值!无论如何,感谢您的链接和您的时间!

以上是关于DatePipe 转换显示错误的日期格式的主要内容,如果未能解决你的问题,请参考以下文章

Angular4无效的管道参数

日期转换显示错误[重复]

Angular:在 node_module 组件中覆盖 DatePipe

angular2 datePipe IOS不兼容问题

无法在 Swift 中将日期格式转换为显示日期

access里日期格式是2012-1-19,怎么让日期转换成周次,显示wk03?