Fullcalendar RRule配置exdate/exrule后无法正常排除指定日期问题求助
问题原因及修复方案
exdate格式不符合规范
FullCalendar 5.x 版本要求exdate数组内的日期必须是与rrule的dtstart时间完全匹配的ISO 8601格式字符串,你当前只填了日期部分2021-10-11,没有带上和dtstart一致的时间T08:00:00,导致规则匹配失败。byweekday参数值类型错误
你当前给byweekday传的是字符串'rrule.RRule.MO',实际应该传入rrule库导出的枚举变量,去掉外层引号直接写rrule.RRule.MO即可,字符串形式无法被rrule库正确识别。
修正后的配置代码
events: [ { id: '291', resourceId: '29', color: '#71CA83', textColor: '#ffffff', description: 'Manager1 Manager1 : 08:00:00 - 10:30:00', rrule: { freq: 'weekly', interval: 1, byweekday: rrule.RRule.MO, // 移除外层字符串引号 dtstart: '2021-03-01T08:00:00' }, duration: '02:00', exdate: ['2021-10-11T08:00:00'] // 补充与dtstart一致的时间部分 } ]
区间排除实现方式
如果需要排除指定起止时间的日期区间,不需要使用exdate,改用事件根属性下的exrule配置对应的重复排除规则即可。
如果修复后仍然不生效,请检查是否已经正确注册rrule插件到FullCalendar实例中。
内容的提问来源于stack exchange,提问作者user3258097
相关产品推荐
相关产品推荐

