You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

moment.js本地化语言切换问题:切换至德语失败求助

解决Moment.js切换德语locale失败的问题

你遇到的问题核心是Moment.js默认只内置了英文语言包,直接调用.locale('de')不会自动加载德语的本地化资源,所以日期还是会以英文格式输出。下面给你两种可行的解决方案:


方案1:引入包含所有locale的Moment.js版本

最简单的方式是直接使用包含所有语言包的Moment.js文件,无需额外引入单独的locale脚本。

在你的HTML中替换原有的Moment.js引入:

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.4/moment-with-locales.min.js"></script>

替换之后,你原来的代码不需要做任何修改,就能正常输出德语格式的日期——比如会显示类似05. November 2024这样的结果。

方案2:单独引入德语locale文件

如果你想减少加载体积,只加载基础Moment.js+德语语言包,可以分两步引入:

  1. 先引入基础的Moment.js核心文件:
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.4/moment.min.js"></script>
  1. 再引入德语的本地化脚本:
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.4/locale/de.min.js"></script>

完成这两步后,你的原有代码就能正常输出德语日期了。


额外优化:全局设置默认locale

如果你希望页面中所有Moment.js实例都默认使用德语,可以在代码开头全局设置一次,后续就不用每次都调用.locale('de')了:

moment.locale('de'); // 全局设置德语为默认语言
$(solutions[0]).html(moment().subtract({h: 2, m: 10}).format('DD. MMMM YYYY'));

内容的提问来源于stack exchange,提问作者Max Di Campo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:35:27