我正在尝试使用dayjs. 按照文档中的示例,我已在 HTML 脚本中进行了设置:
<script src="https://unpkg.com/dayjs@1.10.4/dayjs.min.js"></script>
<script src="https://unpkg.com/dayjs@1.10.4/locale/en-gb.js"></script>
Run Code Online (Sandbox Code Playgroud)
在我的 JS 代码中,我有以下几行:
var locale = dayjs.locale('en-gb');
var date = dayjs('1/4/21').format('DD MMM YYYY');
Run Code Online (Sandbox Code Playgroud)
第一行正确返回locale为“en-gb”。date但是,根据 DMY 的标准英式英语日期顺序,第二行返回为“04 Jan 2021”,而本应为“01 Apr 2021”。
我已检查 en-gb 语言环境文件的日期是否正确。
我该如何纠正这个问题?
编辑
我后来发现moment使用时也有同样的问题moment-with-locales.js。
这可能无法回答问题,因为您具体询问如何使用本地功能解析日期。但我使用自定义解析插件解决了这个问题:
const customParseFormat = require("dayjs/plugin/customParseFormat");
dayjs.extend(customParseFormat);
dayjs("01/04/2021", "DD/MM/YYYY").format("DD MMM YYYY")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2201 次 |
| 最近记录: |