无法在全日历中使用 rrule 插件呈现重复事件
Can't render recurring events using rrule plugin in fullcalendar
我正在尝试使用 fullcalendar 4.0.0-alpha2 和 RRULE 在 Angular 中呈现重复发生的事件。
angular.json:
"scripts": [
"node_modules/fullcalendar/dist/fullcalendar.js",
"node_modules/rrule/dist/es5/rrule.js",
"node_modules/fullcalendar/dist/plugins/rrule.min.js"
]
mycomponent.component.ts:
import { Calendar } from 'fullcalendar';
import { RRule } from "rrule";
ngOnInit(): void {
const rule = new RRule({
freq: RRule.DAILY,
interval: 1,
byweekday: [RRule.MO, RRule.FR],
dtstart: new Date(Date.UTC(2018, 1, 1, 10, 30)),
until: new Date(Date.UTC(2020, 12, 31))
});
var calendarEl = document.getElementById('calendarDirectTest');
var calendar = new Calendar(calendarEl, {
events: [
{
"title": "Test A",
"start": "2018-10-09T16:00:00",
rrule: rule
}
]
});
calendar.render();
}
事件只呈现一次,这意味着 fullcalendar 完全忽略了 RRULE 属性,尽管我包括了 rrule 库和 rrule 插件。
这是关于该插件的文档:
https://fullcalendar.io/docs/v4/rrule-plugin
我看到的唯一不同之处在于他们导入连接器/插件的方式,即:
import 'fullcalendar/plugins/rrule';
但这对 Angular 不起作用,除非我遗漏了什么。
谢谢
如果您使用的是 rrule 插件,则不应在事件数据中包含 start
或 end
字段。它将使用 dtstart
和 duration
值。
我正在尝试使用 fullcalendar 4.0.0-alpha2 和 RRULE 在 Angular 中呈现重复发生的事件。
angular.json:
"scripts": [
"node_modules/fullcalendar/dist/fullcalendar.js",
"node_modules/rrule/dist/es5/rrule.js",
"node_modules/fullcalendar/dist/plugins/rrule.min.js"
]
mycomponent.component.ts:
import { Calendar } from 'fullcalendar';
import { RRule } from "rrule";
ngOnInit(): void {
const rule = new RRule({
freq: RRule.DAILY,
interval: 1,
byweekday: [RRule.MO, RRule.FR],
dtstart: new Date(Date.UTC(2018, 1, 1, 10, 30)),
until: new Date(Date.UTC(2020, 12, 31))
});
var calendarEl = document.getElementById('calendarDirectTest');
var calendar = new Calendar(calendarEl, {
events: [
{
"title": "Test A",
"start": "2018-10-09T16:00:00",
rrule: rule
}
]
});
calendar.render();
}
事件只呈现一次,这意味着 fullcalendar 完全忽略了 RRULE 属性,尽管我包括了 rrule 库和 rrule 插件。
这是关于该插件的文档: https://fullcalendar.io/docs/v4/rrule-plugin
我看到的唯一不同之处在于他们导入连接器/插件的方式,即:
import 'fullcalendar/plugins/rrule';
但这对 Angular 不起作用,除非我遗漏了什么。
谢谢
如果您使用的是 rrule 插件,则不应在事件数据中包含 start
或 end
字段。它将使用 dtstart
和 duration
值。