【问题标题】:Unable to set date in Angular material datepicker无法在 Angular 材质日期选择器中设置日期
【发布时间】:2019-10-30 14:58:28
【问题描述】:

我有一个日期,它是从支持的30-10-2019 (DD-MM-YYYY) 格式获取的。我试图让这个日期显示在角度材料日期选择器中,但它不显示日期。

我尝试了 moment 并使用了 moment (this.myDate).format('YYYY-MM-DD').toString();我错过了什么?任何其他方法(不使用矩)也可以。

【问题讨论】:

  • 欢迎来到 SO。提供您尝试过的代码minimal-reproducible-example
  • 我试过 moment(this.myDate).format('YYYY-MM-DD').toString();
  • 这是你的意思吗? stackblitz.com/angular/aqegoygyadb
  • 嘿,保罗,是的,但我无法使用角度绑定在日期选择器中显示它。我有一个 DD-MM-YYYY 格式的日期,我需要在日期选择器中显示它。如果我的日期为“2019 年 10 月 30 日星期三 20:44:26 GMT+0530(印度标准时间)”,则会显示,而不是 2019 年 10 月 30 日

标签: javascript angular angular-material


【解决方案1】:

试试这个

this.date = new Date(this.myDate);

【讨论】:

    【解决方案2】:

    您需要将日期格式传递给如下所示的时刻,并将其分配给您的 formControl 或 ngModel。假设您的 ngModel 是日期,那么代码将是

    this.date = moment(this.myDate, 'DD-MM-YYYY');
    

    这是工作示例:https://stackblitz.com/edit/angular-w9szcc

    希望这会有所帮助。

    【讨论】:

    • 嗨阿拉巴卡什,感谢您的帮助。我这样做了。startDate = moment(data.startDate, 'DD-MM-YYYY').toISOString();它有效,但它以 MM/DD/YYY 格式显示日期。
    • 在附加的代码链接中,有一个名为 MY_FORMATS 的配置,只需将 display 对象中 dateInput 的格式更改为您想要查看的格式.
    • 对不起,它不起作用,格式是正确的,虽然我尝试改变它但它不起作用。
    • 你改变了 MY_FORMATS 吗?在代码链接stackblitz.com/edit/angular-w9szcc。日期格式仅显示为 DD-MM-YYYY。你期待什么格式?
    • 我期待 DD-MM-YYYY。 MY_FORMATS 有 DD-MM-YYYY 所以我认为我不必更改它。这是我所拥有的:
    猜你喜欢
    • 1970-01-01
    • 2023-04-09
    • 1970-01-01
    • 1970-01-01
    • 2016-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多