在Luxon中设置时间并将其显示在用户的本地时区

问题描述

我正在使用Luxon来显示何时处理订单。如果他们在美国东部时间上午9点至下午5点营业时间下订单,我想告诉他们他们的订单将在第二天美国东部时间下午2:00准备就绪。

    let easternTime = luxon.DateTime.local().setZone('America/New_York');
    let localTime = luxon.DateTime.local();
    // Omitted/Irrelevant Logic to determine if time is after 9am-5pm EST

    console.log("Business closed...turnaround next day");
    console.log(easternTime.toLocal().plus({ day: 1 }).toFormat('EEE,MMM d,2:00 a ZZZZ'));

如果有人在旧金山(PST)看到此消息,我希望有时间阅读太平洋标准时间上午11:00。我将如何通过Luxon或其他框架来实现这一目标?

谢谢!

解决方法

只需使用.set({hour:14})功能:

console.log(easternTime.set({ hour: 14 }).set({ minutes: 0 }).toLocal().plus({ day: 1 }).toFormat('EEE,MMM d,h:mm a ZZZZ'));