【发布时间】:2019-06-30 12:23:32
【问题描述】:
我有一个要求,我需要在当地时区显示用户的时间。这需要使用 date-fns 来完成。
以下代码检查当前时间,然后给定一个时区,根据时区将其转换为本地时间。
const { formatToTimeZone } = require('date-fns-timezone')
let date = new Date()
const format = 'D.M.YYYY HH:mm:ss [GMT]Z (z)'
const output = formatToTimeZone(date, format, { timeZone: 'Asia/Calcutta' })
但是,我如何即时猜测用户的时区?
在moment.js,您可以通过moment.tz.guess() 获取。但是如果没有moment.js 和使用date-fns,我该怎么做呢?
https://runkit.com/embed/835tsn9a87so
更新:我将在 VueJS 应用程序中使用它。因此,如果有任何其他相关的解决方案,也欢迎。谢谢。
【问题讨论】:
-
您无需猜测任何内容。每当您创建新的日期对象时,浏览器都会自动提供时区。
-
好的。是否可以在我的应用程序中明确读取它?举例来说,如果我想显示一条消息,例如 You are in 'x/y' time zone。
-
@asanas 我建议您更改问题的标题并删除 VueJS 应用程序中的“?”因为您的问题在任何 js 应用程序中都有效。最好也删除 vue 标签。
-
@ImanMahmoudinasab 完成。谢谢!
标签: javascript timezone date-fns