Javascript Fullcalendar JSON源缓存
如何从JSON提要缓存事件 我不认为这是我想要的。它只工作一个月。假设我加载一个月,一月,然后更改为day视图,数据被缓存,并且不发送ajax请求。但如果我把月份改为2月份,再改回1月份,1月份仍然会重新加载 我认为,作者试图这样做,但仍然没有达到目的。他允许使用,但这取决于浏览器设置Javascript Fullcalendar JSON源缓存,javascript,jquery,jquery-ui,fullcalendar,Javascript,Jquery,Jquery Ui,Fullcalendar,如何从JSON提要缓存事件 我不认为这是我想要的。它只工作一个月。假设我加载一个月,一月,然后更改为day视图,数据被缓存,并且不发送ajax请求。但如果我把月份改为2月份,再改回1月份,1月份仍然会重新加载 我认为,作者试图这样做,但仍然没有达到目的。他允许使用,但这取决于浏览器设置 有什么想法吗?我遗漏了什么吗?我会创建自己的缓存对象,并在fullcalendar初始值设定项的事件中使用它。此方法使用“事件作为函数”方法获取事件数据: 我通过在fullcalendar中使用backbone.
有什么想法吗?我遗漏了什么吗?我会创建自己的缓存对象,并在fullcalendar初始值设定项的
事件中使用它。此方法使用“事件作为函数”方法获取事件数据:
我通过在fullcalendar中使用backbone.js来实现这一点。提供代码和教程来解释它。这是一个有点极端的解决方案,但将backbone.js与fullcalendar结合使用的好处可能值得探索。Hi@Matt H,您将事件数据直接保存到javascript数组中,这样做增加了使用空间,甚至在添加到本地数组之前不压缩数据,请确认它是什么“events.eventsCache”,它是一个完整的日历预定义数组还是由我们自己定义的,但这个想法很好。
$("#calendar").fullCalendar({
// init options
// go
//here,
events: function (start, end, callback) {
//have we already cached this time?
if (events.eventsCache
&& events.eventsCache[start.toString + "-" + end.toString]){
//if we already have this data, pass it to callback()
callback(eventsCache[start.toString + "-" + end.toString]);
return;
}
//we haven't gotten this time range (month) yet. get it, and pass it to callback()
$.get("where_my_events_live.php", function(data){
if (!events.eventsCache)
events.eventsCache = {};
//store your data
eventsCache[start.toString + "-" + end.toString] = data;
callback(data);
});
},
..r