如何在DayJS中禁用日期转换为本地时区
解决DayJS保留原时区格式化的问题
要让DayJS保留原日期字符串的时区信息、不自动转换为本地时区,你需要用到它的时区插件,具体操作步骤如下:
安装必要插件
执行以下命令安装DayJS的UTC和时区插件:npm install dayjs-plugin-utc dayjs-timezone --save启用插件
在代码中导入并启用这两个插件:import dayjs from 'dayjs' import utc from 'dayjs-plugin-utc' import timezone from 'dayjs-timezone' dayjs.extend(utc) dayjs.extend(timezone)正确解析并格式化日期
使用dayjs.tz()方法替代默认的dayjs()来解析带时区的字符串,该方法会自动识别并保留原时区信息,之后直接执行格式化即可:const someDate = '2023-02-13T09:00:00.000-05:00' const formattedTime = dayjs.tz(someDate).format('h:mm A') console.log(formattedTime) // 输出 9:00 AM(原时区对应的时间)
如果不需要完整的时区支持,仅想避免转换为本地时区,也可以用UTC插件将日期转为UTC模式后格式化,但这种方式会得到UTC时间而非原时区的时间,根据你的需求,优先选择上述时区插件的方案。
内容的提问来源于stack exchange,提问作者kkkkkkkkkkkkkkkkk
相关产品推荐
相关产品推荐

