【问题标题】:FullCalendar Cannot read property 'stripTime' of undefinedFullCalendar 无法读取未定义的属性“stripTime”
【发布时间】:2017-08-11 01:55:51
【问题描述】:

昨晚我将一个应用程序从一个 Centos 服务器迁移到另一个 - 这样做唯一不起作用的是 FullCalendar。

在具有完全相同数据和相同版本的 jQuery、moment 和 Fullcalendar 的“旧”服务器上,日历显示没有问题。

在“新”服务器上出现错误:

fullcalendar.min.js:963

Uncaught TypeError: Cannot read property 'stripTime' of undefined
    at D (fullcalendar.min.js:963)
    at b (fullcalendar.min.js:959)
    at S (fullcalendar.min.js:955)
    at E (fullcalendar.min.js:949)
    at fullcalendar.min.js:816
    at Object.success (fullcalendar.min.js:848)
    at j (jquery.min.js:2)
    at Object.fireWith [as resolveWith] (jquery.min.js:2)
    at x (jquery.min.js:4)
    at XMLHttpRequest.<anonymous> (jquery.min.js:4)
D @ fullcalendar.min.js:963
b @ fullcalendar.min.js:959
S @ fullcalendar.min.js:955
E @ fullcalendar.min.js:949
(anonymous) @ fullcalendar.min.js:816
success @ fullcalendar.min.js:848
j @ jquery.min.js:2
fireWith @ jquery.min.js:2
x @ jquery.min.js:4
(anonymous) @ jquery.min.js:4

第963行是这个函数的内容:

function D(t) {
    null == t.allDay && (t.allDay = !(t.start.hasTime() || t.end && t.end.hasTime())), t.allDay ? (t.start.stripTime(), t.end && t.end.stripTime()) : (t.start.hasTime() || (t.start = I.rezoneDate(t.start)), t.end && !t.end.hasTime() && (t.end = I.rezoneDate(t.end)))
}

我在I use fullcalendar to make the event 找到了一个相同的问题,但没有答案 - FullCalendar 文档中唯一提到脱衣时间的是https://fullcalendar.io/docs/utilities/Moment/,它谈到它被用于将定时时刻转换为模棱两可,但这并没有对我来说意义不大!

我无法重现它,这让我认为服务器配置中是否存在导致问题的原因,因为这是新旧之间的唯一区别?我尝试更新到 Moment 和 FullCalendar 的最新版本,但都没有任何区别

【问题讨论】:

  • 堆栈跟踪有点难以阅读,因为它是使用缩小脚本生成的,您可以临时更改为未缩小的版本并再次运行/发布吗?
  • 是的,当然,我这样做是为了获取第 963 行的内容,所以会再做一次
  • 抱歉刚刚注意到,文件名说它是缩小版但实际上不是 - 那是未缩小版但上传为 min 所以我不需要更改应用程序代码

标签: jquery fullcalendar momentjs


【解决方案1】:

经过大量试验和错误后,我发现了问题 - 我的一个活动的开始日期为空,这就是问题的根源。

https://fullcalendar.io/docs/utilities/Moment/ 的文档指的是 striptime 用于模棱两可的定时时刻,即“在幕后,这些时刻以 UTC 模式表示,时间为 00:00:00”

然后,我查看了所有事件,寻找时间为 00:00:00 的事件 - 实际上我找到了很多,因此我删除了这些事件,但问题仍然存在。

然后我决定查找日期为 0(或在本例中为 null)的条目,并找到了一个,当我删除它时,它更正了问题,日历现在可以正常显示。

不知道为什么这在以前的服务器上不是问题,而是在这个问题上,但是如果其他人处于同样的情况,请检查空日期。

【讨论】:

  • 遇到了同样的问题,感谢分享解决方案。
  • 我仍然在“脱衣舞时间”中遇到问题,你能回答任何人吗?请帮助我在一天内解决这个问题
猜你喜欢
  • 2020-05-25
  • 1970-01-01
  • 2020-12-23
  • 2016-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-06
相关资源
最近更新 更多