react-native - 如何使用 Moment 在 React-Native 中将 Firestore Timestamp UTC 转换为 UTC+1?
问题描述
我想使用 MomentJs 将 Firestore 时间戳(默认为 UTC)转换为 UTC+1。我怎样才能做到这一点?
firestore.Timestamp.now().toDate()
PS我不想使用本地/设备的时间。
解决方案
Firestore 时间戳(默认为 UTC)
真的没有“默认”。当您拥有 Timestamp 对象(或JavaScript Date或来自现代操作系统的任何其他本机日期对象)时,时间时刻始终在内部以 UTC 表示。
当您调用toDate()
时间戳时,生成的日期仍然在内部以 UTC 表示。
不要对 Date 对象的“默认”字符串表示感到困惑。它将出现在配置计算机操作系统的本地时区中。但在内部,它仍然是 UTC。
如果您想将时间戳格式化为另一个时区的字符串,您当然可以这样做。momentjs 有一个随附的库Moment Timezone可以帮助您。momentjs 库本身不会帮助您处理时区(除了运行它的系统的本地提供的时区),因为通常认为本机时间戳始终是 UTC。
推荐阅读
- javascript - React Navigation 6 升级冲突
- angular - Angular - 我正在使用 YouTube 播放器 API。我想要刷新组件并重新加载页面
- python - Pandas dataFrame 使用 groupby 但重复非顺序值
- angular - 如何在 PrimeNG 的 SplitButton 中传递参数?
- php - 使用支付 api 获取 razorpay 上的所有支付详细信息
- java - 为什么 Hibernate 会这样对我的列表进行排序?
- jvm - java.lang.OutOfMemoryError:直接缓冲内存 Apache Ignite
- javascript - 使用JS在文本字段中输入时如何找到插入点的位置?
- mql4 - 如何计算所有超过 70 和低于 30 的 RSI 柱?
- ios - 防止 Xcode 索引大量 JSON 文件并分别包含它们以使 Xcode 更快