You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel 8中为FullCalendar JS插件添加额外字段值输出undefined如何解决

问题原因
  • FullCalendar 所有自定义的非标准事件字段,都会统一存放在事件对象的 extendedProps 属性下。而 eventDidMount 回调的入参是包含当前事件、DOM元素等信息的复合对象,你直接读取入参的 status 属性本身就不存在,自然返回 undefined。
  • 代码中使用全局选择器 $('.fc-event-time') 会匹配页面上所有日历事件的时间节点,后续多事件渲染时会出现状态重复追加、错位的问题。
解决方法

你后端Laravel返回事件数据的逻辑没有问题,仅需修改FullCalendar初始化时的 eventDidMount 代码即可:

events: 'getEvents',
eventDidMount: function(info) {
    // 从extendedProps读取自定义的status字段
    const eventStatus = info.event.extendedProps.status;
    // 仅操作当前正在渲染的事件对应的DOM元素
    info.el.querySelector('.fc-event-time').append(document.createElement('br'), eventStatus);
}

如果你的项目中使用jQuery,也可以写为:

eventDidMount: function(info) {
    const eventStatus = info.event.extendedProps.status;
    $(info.el).find('.fc-event-time').append('<br/>' + eventStatus);
}

内容的提问来源于stack exchange,提问作者user12414491

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 14:54:03