使用.addDateExclusion()

问题描述 投票:0回答:1

我正在用重复的事件创建学校班级日历,我如何使用.addDateExclusion(new Date()),我尝试了很多组合,没有巫婆工作

function makeCalendar(name, begin, end, calendar) {
    var eventSeries = CalendarApp.getCalendarById(calendar).createEventSeries(
        name,
        begin,
        end,
        CalendarApp.newRecurrence()
        .addDateExclusion(new Date(2019, 1, 5, 0, 0, 0, 0))
        .addWeeklyRule().interval(2).until(krajdat)
    );
}

编辑1:这只是实际工作的事情

function makeCalendar(name, begin, end, calendar) {
    var eventSeries = CalendarApp.getCalendarById(calendar).createEventSeries(
        name,
        begin,
        end,
        CalendarApp.newRecurrence()
        .addDateExclusion(begin)
        .addWeeklyRule().interval(2).until(krajdat)
    );
}

上面的代码执行它应该做的事情,忽略第一次出现,但无论我在那个日期做了什么,如添加天不起作用

编辑2:

    var d = new Date(begin);
    d.setMonth(9);
    d.setDate(9);

var eventSeries = CalendarApp.getCalendarById(calendar).createEventSeries(
        name,
        begin,
        end,
        CalendarApp.newRecurrence()
        .addDateExclusion(d)
        .addWeeklyRule().interval(2).until(krajdat)
    );

这确实有效,但设定全年没有。仍然不是最佳结果,因为我想将复发传递给函数,但我们正在某处。

编辑3:

我认为这里的问题实际上是时区,我查看了日志,这是工作和非工作日期之间的唯一区别。

google-apps-script google-calendar-api
1个回答
0
投票

发现错误,问题是我需要在首选项中设置的时区.addDateExclusion()如果与不同的时区一起使用则不起作用。

© www.soinside.com 2019 - 2024. All rights reserved.