重新加载页面后如何停留在最后一个视图上(全日历)

时间:2018-07-25 10:30:41

标签: laravel-5 fullcalendar

我在laravel 5.6中使用fullcalendar。 我的默认视图是月视图,我想在重新加载页面后停留在最后一个视图上。 示例:如果我切换到周视图,则希望在刷新页面后能够保持在此视图的一周,而不返回月视图。 感谢您为我提供的解决方案。

4 个答案:

答案 0 :(得分:0)

使用jquery cookie库通过viewRender事件存储当前视图,然后使用以下方法切换到该视图,

 $('#calendar').fullCalendar( 'changeView', 'basicDay'  );

这是viewRender事件的参考,该事件在您切换视图时触发。 https://fullcalendar.io/docs/viewRender

答案 1 :(得分:0)

这非常简单,只需将以下行添加到.fullCalendar初始化中:

viewRender: function (view, element) {
  // when the view changes, we update our localStorage value with the new view name
   localStorage.setItem("fcDefaultView", view.name);
},

    defaultView: (localStorage.getItem("fcDefaultView") !== null ? localStorage.getItem("fcDefaultView") : "month"),

Rgds。塞纳德

答案 2 :(得分:0)

对于V5:

var iv = localStorage.getItem("fcDefaultView") || 'timeGridWeek'
var id = localStorage.getItem("fcDefaultDate") || new Date
var calendar = new FullCalendar.Calendar(calendarEl, {
    initialView: iv,
    initialDate: id,
    datesSet: function (dateInfo) {
        localStorage.setItem("fcDefaultView", dateInfo.view.type);
        localStorage.setItem("fcDefaultDate", dateInfo.startStr);
    },
})
calendar.render()

答案 3 :(得分:0)

对于 V4:

viewSkeletonRender: function (view, element) {
   // when the view changes, we update our localStorage value with the new view name
   localStorage.setItem("fcDefaultView", view.view.type);
},
defaultView: (localStorage.getItem("fcDefaultView") !== null ? localStorage.getItem("fcDefaultView") : "month"),