【问题标题】:How to get the format YYYY-MM-DD from getLocaleDateFormat in Angular?如何从 Angular 中的 getLocaleDateFormat 获取格式 YYYY-MM-DD?
【发布时间】:2022-12-13 09:30:34
【问题描述】:

我有以下代码行:

getLocaleDateFormat('en-CA', FormatWidth.Long )

我想得到YYYY-MM-DD。我得到MMMM d, y

我该怎么办?

【问题讨论】:

    标签: angular


    【解决方案1】:

    从 Angular 6 开始,您可以使用以下内容:

    从'@angular/common'导入{formatDate};
    formatDate(new Date(), 'YYYY-MM-DD', 'en');

    【讨论】:

      【解决方案2】:
      import frenchCanadianLocaleData from "@angular/common/locales/fr-CA";
      

      查看返回数组和数组中的第 11 个值。

      ['y-MM-dd', 'd MMM y', 'd MMMM y', 'EEEE d MMMM y']
      

      看起来 short (1st value) 是正确的,但其余的不是。

      时间是数组中的第 12 个值,看起来是正确的:

      ["HH 'h' mm", "HH 'h' mm 'min' ss 's'", "HH 'h' mm 'min' ss 's' z", "HH 'h' mm 'min' ss 's' zzzz"]
      

      我们需要正确的特定于语言环境的日期和时间格式。

      这是对我们有用的: 我们将日期硬编码为短,时间硬编码为中等,并在它们之间放置一个空格。我们忽略了 getLocaleDateTimeFormat 中的数据。

          const locale = 'fr-CA';
          const dateFormat = getLocaleDateFormat( locale, FormatWidth.Short );
          const timeFormat = getLocaleTimeFormat( locale, FormatWidth.Medium );
          this.dateTimeFormat = dateFormat + ' ' + timeFormat;
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-11-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-01-02
        • 1970-01-01
        相关资源
        最近更新 更多