首页 > 解决方案 > Fullcalendar scheduler v5 自动刷新事件

问题描述

是否可以在不刷新页面的情况下将新事件“推送”到全日历调度程序?

我的事件来源是 JSON 提要。因此,我希望一旦另一个用户输入一个新事件,它就会出现在日历中。json 提要应该有一个侦听器/webhook,如果识别出数据的变化,它应该触发日历以重新获取事件。

这样的事情可能吗?

我找到了一种方法:

    document.addEventListener('DOMContentLoaded', function() {
        var calendarEl = document.getElementById('calendar');

        var source = new EventSource('sse.php')
        source.addEventListener('message', function(e) {
            //console.log(e.data);
            if (e.data != 'doNotUpdate'){
                calendar.refetchEvents();
            }
        }, false);
        
    }

但是,sse.php 是在服务器上运行并检查数据库表中的新事件的脚本,它可能每秒或每隔几秒触发一次并返回 doUpdate 或 doNotUpdate。我不确定这是否可以?对 MySQL 的许多请求?我应该设置不同的吗?

标签: jsonwebhooksfullcalendar-schedulerfullcalendar-5

解决方案


推荐阅读