【问题标题】:moment : Getting error when formatting date using user language时刻:使用用户语言格式化日期时出错
【发布时间】:2016-07-21 06:47:29
【问题描述】:

当我尝试使用 Moment JS 库根据用户语言显示我的日期时出现此错误:

format.replace is not a function 

代码如下:

var localeData = moment.localeData();

switch (navigator.language || navigator.userLanguage) {
    case 'fr':
        localeData = moment.localeData('fr');
        break;
}

localeData.longDateFormat('LL');

var dateToDisplay = moment(1459035326000, "x").format(localeData);

【问题讨论】:

  • 我在该代码中看不到 format.replace。该代码中的错误在哪里?
  • @GeorgeStocker 在最后一行抛出错误并包含在 moment js 库中。我在某处的通话中肯定有错误
  • 看看我对你其他问题的回答。我认为这将澄清很多事情的真相。这不是你应该改变语言环境的方式。

标签: javascript momentjs


【解决方案1】:

你应该使用:

var format = localeData.longDateFormat('LL');
var dateToDisplay = moment(1410715640579).format(format);

因为longDateFormat() 返回一个包含日期格式的字符串,如'MMMM D, YYYY',您应该将此字符串传递给format() 函数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-02
    相关资源
    最近更新 更多