如何使用 Angular 7 cli 的全日历捕捉下一个、上一个、今天的事件
how to catch next, prev, today event with fullcalendar for Angular 7 cli
我正在我的 Angular 7 应用程序中实现 fullCalendar,日历正在运行,我正在向其中导入一些事件,但我正在努力提高效率,我正在努力只带来事件日历需要。
所以..我有一些问题。
如何获取 Prev 或 Next 或 Today 按钮中的点击事件?
如何获取当前日期?
我一直在查看文档...但是只有 jquery...
的示例
这里我复制我的HTML
<full-calendar id="calendar" *ngIf="options" #fullcalendar [editable]="true" [events]="citas"
[header]="options.header" [locale]="options.locale" [customButtons]="options.customButtons"
(dateClick)="dateClick($event)" [plugins]="options.plugins" (eventClick)="eventClick($event)" [eventLimit]="4">
</full-calendar>
还有我的 T
@ViewChild('fullcalendar') fullcalendar: FullCalendarComponent;
constructor() {
this.options = {
editable: true,
header: {
left: 'prev,next today',
center: 'title',
right: 'dayGridMonth, listDay'
},
plugins: [dayGridPlugin, listPlugin, timeGridPlugin],
locale: esLocale,
};
}
根据插件的 docs,您可以访问底层 Calendar
原始数据和方法对象:
const calendarApi = this.calendarComponent.getApi();
日期导航的完整方法列表可在此处找到:
https://fullcalendar.io/docs/date-navigation.
因此,要获取当前日期,我们可以使用:calendarApi.getDate();
.
以下代码应该有效:
export class AppComponent {
// references the #calendar in the template
@ViewChild('calendar') calendarComponent: FullCalendarComponent;
someMethod() {
const calendarApi = this.calendarComponent.getApi();
const currentDate = calendarApi.getDate();
console.log("The current date of the calendar is " + currentDate);
}
}
我没有发现任何为上一个和下一个按钮发出的事件,但您可以使用 calendar.prev()
和 calendar.next()
方法构建自己的按钮。
goPrev() {
const calendarApi = this.calendarComponent.getApi();
calendarApi.next(); // call a method on the Calendar object
}
我现在来晚了,但我想与您分享我的解决方案,所以:
在您的日历选项中,您可以添加自定义按钮 属性,然后将您的 newNextFunct 添加到 fullCalendar 函数,如下所示:
customButtons: {
next: {
click: this.nextMonth.bind(this),
},
prev: {
click: this.prevMonth.bind(this),
},
today: {
text: "Aujourd'hui",
click: this.currentMonth.bind(this),
},
},
你的名为 nextMonth 的 newNextFunction 必须是这样的:
nextMonth(): void {
console.warn('nextMonth');
this.calendarApi = this.calendarComponent.getApi();
this.calendarApi.next();
}
我正在我的 Angular 7 应用程序中实现 fullCalendar,日历正在运行,我正在向其中导入一些事件,但我正在努力提高效率,我正在努力只带来事件日历需要。
所以..我有一些问题。
如何获取 Prev 或 Next 或 Today 按钮中的点击事件?
如何获取当前日期?
我一直在查看文档...但是只有 jquery...
的示例这里我复制我的HTML
<full-calendar id="calendar" *ngIf="options" #fullcalendar [editable]="true" [events]="citas"
[header]="options.header" [locale]="options.locale" [customButtons]="options.customButtons"
(dateClick)="dateClick($event)" [plugins]="options.plugins" (eventClick)="eventClick($event)" [eventLimit]="4">
</full-calendar>
还有我的 T
@ViewChild('fullcalendar') fullcalendar: FullCalendarComponent;
constructor() {
this.options = {
editable: true,
header: {
left: 'prev,next today',
center: 'title',
right: 'dayGridMonth, listDay'
},
plugins: [dayGridPlugin, listPlugin, timeGridPlugin],
locale: esLocale,
};
}
根据插件的 docs,您可以访问底层 Calendar
原始数据和方法对象:
const calendarApi = this.calendarComponent.getApi();
日期导航的完整方法列表可在此处找到: https://fullcalendar.io/docs/date-navigation.
因此,要获取当前日期,我们可以使用:calendarApi.getDate();
.
以下代码应该有效:
export class AppComponent {
// references the #calendar in the template
@ViewChild('calendar') calendarComponent: FullCalendarComponent;
someMethod() {
const calendarApi = this.calendarComponent.getApi();
const currentDate = calendarApi.getDate();
console.log("The current date of the calendar is " + currentDate);
}
}
我没有发现任何为上一个和下一个按钮发出的事件,但您可以使用 calendar.prev()
和 calendar.next()
方法构建自己的按钮。
goPrev() {
const calendarApi = this.calendarComponent.getApi();
calendarApi.next(); // call a method on the Calendar object
}
我现在来晚了,但我想与您分享我的解决方案,所以: 在您的日历选项中,您可以添加自定义按钮 属性,然后将您的 newNextFunct 添加到 fullCalendar 函数,如下所示:
customButtons: {
next: {
click: this.nextMonth.bind(this),
},
prev: {
click: this.prevMonth.bind(this),
},
today: {
text: "Aujourd'hui",
click: this.currentMonth.bind(this),
},
},
你的名为 nextMonth 的 newNextFunction 必须是这样的:
nextMonth(): void {
console.warn('nextMonth');
this.calendarApi = this.calendarComponent.getApi();
this.calendarApi.next();
}