javascript - 如果事件有规则,则在 eventClick 中返回具有 null 结束值的事件
问题描述
https://codepen.io/SashaPl/pen/MWboodq?editors=0010
如果我有带有 rrule 的事件,那么在 eventClick 中它不会有结束值,但会有正确的开始值。
对于此类活动,结束日期为 Thu Feb 04 2021 00:00:00
{
title: "simple event",
start: "2021-02-02",
end: "2021-02-04"
},
但是像这样它将为空
{
title: "event with rrule",
start: "2021-02-03T12:30:00",
end: "2021-02-03T13:30:00",
rrule: "FREQ=Weekly;WKST=SU;UNTIL=20210804T000000Z;INTERVAL=1;BYDAY=WE"
}
解决方案
当从后端映射事件时,我为我将 eventLengthTimeStamp 添加到 eventLengthTimeStamp 修复了它
const eventLengthTimeStamp = end.getTime() - start.getTime();
什么时候
eventClick: (event) => {
const popover = this._popoversMap.get(event.el);
if (popover) {
//this property is used because event with rrule have no end. end is null
const diffTimeStamp = event.event.extendedProps.eventLengthTimeStamp;
const end = new Date(event.event.start.getTime() + diffTimeStamp);
const calendarEvent: EventApi = JSON.parse(JSON.stringify(event.event));
calendarEvent.extendedProps.end = end;
popover.instance.popover.open({ event: calendarEvent });
}
},
这对我来说很好
推荐阅读
- chart.js - 无法从 mouseenter 上的 chartjs-annotation-plugin 获取事件
- c# - 当容器的位置每次都可以改变时,有没有更好的方法从下拉列表中选择一个项目
- python - 熊猫:分组和聚合
- excel - 如何根据日期匹配将边框单元格与特定日期更改为范围?
- r - 多个输出的一个操作按钮闪亮
- node.js - 无法从axios返回结果
- ios - 尝试为 iOS Mac M1 芯片运行或构建 Flutter 项目时出错
- sas - PROC MEANS 与上一份报告的结果进行比较
- r - R中的正则表达式:找到第n个出现并根据某些条件添加一些字母
- windows - 盖茨比上的 EBUSY