Rrule: 日期错误

创建于 2018-04-16  ·  9评论  ·  资料来源: jakubroztocil/rrule

我正在用 react-native 构建一个日历并注意到一些奇怪的东西

当我在 iOS 上运行它时

console.log(
  rrulestr('FREQ=DAILY;DTSTART=20180416T070000Z;INTERVAL=2;WKST=MO')
    .between(
      new Date("2018-10-24T22:00:00.000Z"),
      new Date("2018-11-03T00:00:00.000Z")
    )
)

我得到以下信息:

Array [
  2018-10-25T07:00:00.000Z,
  2018-10-27T07:00:00.000Z,  <--
  2018-10-28T08:00:00.000Z,  <--
  2018-10-30T08:00:00.000Z,
  2018-11-02T08:00:00.000Z,
]

当我在控制台中运行它时,在https://jakubroztocil.github.io/rrule/
我得到了更正确的结果:

Array [
  2018-10-25T07:00:00.000Z,
  2018-10-27T07:00:00.000Z, <--
  2018-10-29T08:00:00.000Z, <--
  2018-10-31T08:00:00.000Z,
  2018-11-02T08:00:00.000Z,
]

我正在使用 rrule v2.2.9
从 2018 年 4 月 16 日到现在,其他一切看起来都是正确的

最有用的评论

使用 @2.2.0 而不是 @2.2.8 有效

所有9条评论

甚至在 npm 操场上运行它: https ://runkit.com/embed/1lgceq9e7rm0

使用 @2.2.0 而不是 @2.2.8 有效

我们也遇到了这个问题。 这个问题似乎是由 11 月的夏令时转变引起的。 从@2.2.9 降级到@2.2.0 也对我们有用。

@2.2.9 我也有错误的日期当将频率设置为每周和工作日到星期四时,我得到的日期是在星期三! 切换回@2.2.0 对我有用。
我在 GMT+2(中欧,夏令时)

同样在这里,时区 GMT+3(夏季基辅/乌克兰)
相同的规则:FREQ=WEEKLY;BYDAY=FR;DTSTART=20180713T060000Z;UNTIL=20180727T060000Z
在 Firefox 和 Chrome 中返回不同的结果,其中 Chrome 似乎采用 BYDAY=BYDDAY-1

从 2.2.9 回退到 2.2.0 解决了这个问题

@jimmywarting @chrishanyu @scoutkirkolson @pzhuk我相信这已在 2.3.3 中修复。 如果您仍然有任何问题,请重新打开。

我们遇到了这个问题并恢复到 2.2.0 修复了它

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

agordeev picture agordeev  ·  16评论

zeluspudding picture zeluspudding  ·  11评论

espen picture espen  ·  11评论

spurreiter picture spurreiter  ·  3评论

Prinzhorn picture Prinzhorn  ·  15评论