首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Luxon:如何忽略特定日期的默认时区

Luxon:如何忽略特定日期的默认时区
EN

Stack Overflow用户
提问于 2019-06-04 16:28:35
回答 1查看 5.1K关注 0票数 8

我想生成一个不考虑Settings.defaultZone的Luxon date。

在我的例子中,我从第三方日期选择器组件获得了一个日期字符串。格式如下:

2019-06-28T00:00:00

然而,现在我们通过我们所有的应用程序使用Luxon来管理日期,所以我需要解析该日期来生成一个Luxon日期。

因此,我按如下方式解析该字符串:

代码语言:javascript
复制
import { DateTime } from 'luxon';
function parseDate(dateString) { // Let's say dateString === 2019-06-28T00:00:00

  const formattedDate = DateTime.fromISO(value); // 2019-06-27T23:00:00.000Z
 ...
}

如您所见,formattedDate受当前时区的影响。在此特定情况下,在应用程序引导程序中,我们将常规时区设置为GMT+1。

因此,格式化日期设置为23:00的6月27日,而不是用户在datepicker中选择的6月28的00:00。全局时区设置正在随时间调整。

这通常是很好的,但在这种特殊情况下(用户选择他们的身份证的到期日期),我们不需要也不想考虑时区。我希望日期设置为utc时区的6月28日。

我试过这个:

const formattedValue = DateTime.fromISO(value).setZone('utc');

但是,这不会修改日期,它被设置为6月27日。

我想有一个简单的方法可以做到这一点,只是我找不到它。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-04 16:30:38

我真的很接近:

代码语言:javascript
复制
const formattedValue = DateTime.fromISO(value, {zone: 'utc'});

真的很管用。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56440097

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档