javascript - 拖动事件的完整日历 - >未捕获的类型错误:无法读取未定义的属性“isWithinClipping”
问题描述
我正在我的 React.js 项目中实现 fullcalendar.io。当我拖动事件时,有时会出现此错误,有人可以告诉我是什么问题吗?
Uncaught TypeError: Cannot read property 'isWithinClipping' of undefined
at HitDragging.queryHitForOffset (static/js/0.chunk.js:14463)
at HitDragging.handleMove (static/js/0.chunk.js:14427)
at EmitterMixin.HitDragging.handleDragMove (static/js/0.chunk.js:14360)
at applyAll (static/js/0.chunk.js:1629)
at EmitterMixin.triggerWith (static/js/0.chunk.js:4885)
at EmitterMixin.trigger (static/js/0.chunk.js:4879)
at EmitterMixin.FeaturefulElementDragging._this.onPointerMove (static/js/0.chunk.js:14113)
at applyAll (static/js/0.chunk.js:1629)
at EmitterMixin.triggerWith (static/js/0.chunk.js:4885)
at EmitterMixin.trigger (static/js/0.chunk.js:4879)
at HTMLDocument.PointerDragging.handleMouseMove (static/js/0.chunk.js:13229)
当用户调整特定事件的大小时使用此方法:
eventResize = arg => {
let event = {
id: arg.event.id,
start_date: arg.event.start,
end_date: arg.event.end,
allDay: arg.event.allDay
};
this.setState(prevState => (
{
events: prevState.events.map(
specificEvent => specificEvent.id === event.id ? {
...specificEvent,
start: event.start_date,
end: event.end_date,
allDay: event.allDay
} : specificEvent
)
}));
};
这也是 FullCalendar 组件的选项最后一个选项是用于拖动事件 - EventDrop,这个选项我从官方文档中获得
<FullCalendar
defaultView="dayGridMonth"
eventTimeFormat={{
hour: '2-digit',
minute: '2-digit',
hour12: false,
meridiem: false
}}
displayEventEnd={true}
timeZone={'local'}
defaultDate={new Date()}
firstDay={1}
header={{
left: 'dayGridMonth,timeGridWeek,timeGridDay',
center: 'title',
right: 'prev,next today'
}}
businessHours={[ // specify an array instead
{
daysOfWeek: [1, 2, 3, 4, 5],
startTime: '08:00', // 8am
endTime: '18:00' // 6pm
},
]}
plugins={[dayGridPlugin, timeGridPlugin, interactionPlugin, bootstrapPlugin, listPlugin]}
themeSystem={"bootstrap"}
events={this.state.events}
eventRender={this.eventRender}
dateClick={this.handleDateClick}
eventResize={this.eventResize}
eventClick={this.eventClicked}
selectMirror={true}
weekNumbers={true}
weekNumbersWithinDays={true}
selectable={true}
editable={true}
unselectAuto={true}
nowIndicator={true}
eventDrop={this.eventResize}
/>
解决方案
组件中有一些已确认的错误会导致此错误:
第一个看起来像您的错误
https://github.com/fullcalendar/fullcalendar/issues/5001 - 从 eventDragStart 更改 validRange 时出错
https://github.com/fullcalendar /fullcalendar/issues/4817 - 在选择/拖动/调整大小时调用重新渲染资源会导致错误
始终首先访问使用的库的存储库,然后查看打开和关闭的问题
欢迎来到 Web 开发的前沿;- )
推荐阅读
- java - RabbitMq AutorecoveringChannels 被收集在内存中,即使它们在代码中被关闭
- c++ - 在win32中重定向标准输出不会重定向标准输出
- javascript - 如何编写一个根据输入变量名自动获取数据值的方法
- python - 如何检索字典中键项的子值?
- android - 如何以编程方式拒绝访问外部存储?
- python - 如何将其写入文件
- arrays - 在同一个数组上反应映射但呈现不同的输出
- c++ - 在 map 中插入键值,其中 map 的值是向量对
- mongodb - MongoDB 2.6 runCommand 创建视图返回一个空视图
- javascript - Vue/Javascript - 编写这个三元组的最佳方式