我正在尝试立即初始化los_angles时区的时间。但它抛出以下错误:
时刻时区没有2018-08-08T10:00:00
的数据
以下是我的代码:
moment().tz("2018-08-08T10:00:00","YYYY-MM-DDTHH:mm:ss",true,"America/Los_Angeles").format("YYYY-MM-DDTHH:mm:ss");
您应该从moment().tz(..)
中删除()
moment
。正确的是moment.tz(..)
如
moment.tz("2018-08-08T10:00:00","YYYY-MM-DDTHH:mm:ss",true,"America/Los_Angeles").format("YYYY-MM-DDTHH:mm:ss");
它给了我结果
"2018-08-08T10:00:00">
裁判: http://momentjs.com/timezone/
你能试试这个吗:
moment.tz("2018-08-08T10:00:00","YYYY-MM-DDTHH:mm:ss",true,"America/Los_Angeles"(.format("YYYY-MM-DDTHH:mm:ss"(;
我得到了一个非常相似的错误(Moment Timezone has no data for 1624031790031
(,并通过 3 个步骤解决了它:
- -时区",而不是"时刻"。
const momentTimezone = require("moment-timezone");
- 加载时刻时区数据。
您可以一次添加一个时区:
momentTimezone.tz.add('America/Los_Angeles|PST PDT|80 70|0101|1Lzm0 1zb0 Op0');
或者您可以将它们添加为数组:
momentTimezone.tz.add([
"America/Los_Angeles|PST PDT|80 70|0101|1Lzm0 1zb0 Op0",
"America/Port_of_Spain|LMT AST|46.4 40|01|-2kNvR.U|43e3"
]);
我将以下时区数据的缩写版本(仅我需要的时区(保存到 JSON 文件中
https://github.com/moment/moment-timezone/blob/develop/data/packed/latest.json
然后将这些时区添加到时刻时区:
const momentTimezoneData = require("../utils/momentTimezoneData");
momentTimezone.tz.add(momentTimezoneData.zones);
- 请确保您的时区是您加载的时区。显然我们的时区没有;这是一个UNIX时间戳
1624031790031
。在使其成为我们加载上面的 #2 中的时区之一(例如"America/Chicago
"(之后,一切都起作用了。
const timeInTheZone = momentTimezone
.tz("2021-06-24T04:34:36.380Z", "America/Chicago")
.format('YYYY-MM-DD HH:mm');