gpt4 book ai didi

jquery - RefetchEvents 全日历

转载 作者:行者123 更新时间:2023-12-01 04:28:25 26 4
gpt4 key购买 nike

我有两个人可以同时访问 FullCalendar 应用程序,但来自不同的计算机,他们无需按刷新按钮即可看到对方的约会更新,我尝试过使用 RefetchEvents 但没有任何结果。你呢有什么建议。非常感谢

最佳答案

refetchEvents 应该从所有来源获取事件并重新渲染它们,所以我很好奇失败的原因。另外,当有更改时,如何将它们推送到您的服务器?或者更改仅保留在客户端上?您需要确保将每个客户端的事件保存到服务器,以便其他客户端可以获取它们。您可以使用 clientEvents 检查当前是否在客户端存储新事件。调用 FullCalendar。看看它会返回给您什么。如果是这样,请确保当通过 select 或您用来添加事件的任何其他方法添加事件时,您将其保存到服务器。

您可以定期对其进行轮询。设置定期调用 refetchEvents 的 Javascript setInterval。这种方法的缺点是它会不断地重新绘制事件。您还可以轮询服务器以获取数据库或包含事件的其他源已更新的时间戳,并且仅在更新时调用 refetchEvents。如果您使用的服务器支持它,您还可以考虑使用 comet 从您的服务器推送信息。

如果我正在进行某种民意调查,我会尝试以下方法:

// set this before calling the calendar
var timeLastUpdated = new Date().getTime();

function pollForNewEvents() {
var url = "/path/to/server/check";
$.get(url, {"timeLastUpdated": timeLastUpdated}, function(data) {
data = parseInt(data, 10); // assume data is milliseconds since epoch
if(data > timeLastUpdated) {
$("#calendar").fullCalendar('refetchEvents')
timeLastUpdated = data;
}
});
}

setInterval("pollForNewEvents()", 10000);

关于jquery - RefetchEvents 全日历,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4615637/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com