【问题标题】:how to get date format from locale [duplicate]如何从语言环境中获取日期格式[重复]
【发布时间】:2016-05-04 19:58:16
【问题描述】:

我目前正在学习角度,并且有一个关于日期时间格式的问题。 我可以将用户语言环境设置为 moment.js 并将其设置为全局并使用 moment.js 来显示日期/时间。 但是,我想在日期输入的占位符中显示语言环境的格式。我该怎么做?

【问题讨论】:

  • toLocaleString() ?
  • 这不会返回格式,而是字符串中的日期。我想获取语言环境中日期的格式,以显示在占位符中
  • @Thernys,是的,它可能是重复的。我能够解决我的问题,通过使用 'var formatL = moment.localeData().longDateFormat('L')' 我没有使用 moment-with-locales.min.js 文件作为好。我包括了它并使用了 localeData 并且它有效!非常感谢,把它指向那里。

标签: javascript angularjs


【解决方案1】:

好问题!

您正在寻找的是moment.localeData(),此调用将为您返回一堆特定于语言环境的功能。假设您正在使用日期时间格式LT, L, LL 等进行格式化。您将需要 longDateFormat 对象

// assume you have set locale to be en-gb
localeData = moment.localeData()
localeData.longDateFormat()

这会让你回来

{
  LT : 'HH:mm',
  LTS : 'HH:mm:ss',
  L : 'DD/MM/YYYY',
  LL : 'D MMMM YYYY',
  LLL : 'D MMMM YYYY HH:mm',
  LLLL : 'dddd, D MMMM YYYY HH:mm'
}

这里是doc

【讨论】:

  • 是的,我能够解决我的问题,通过使用'var formatL = moment.localeData().longDateFormat('L')' 我没有使用moment-with-locales.min.js文件也是如此。我包括了它并使用了 localeData 并且它有效! @Thernys,指出了同样的事情。谢谢
  • 对于投反对票的人,你能告诉我为什么这是一个错误的答案吗?
  • 这对我很有用。谢谢
  • @ChampikaSamarasinghe 谢谢!我很高兴能帮上忙!
猜你喜欢
  • 2023-04-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-01
  • 1970-01-01
  • 2010-11-23
相关资源
最近更新 更多