Events Plugin 📅

我已经将插件更新到最新版本,但遇到了一个奇怪的错误,似乎是插件触发的,但我不确定它是否来自插件本身。

如果禁用插件,则不会出现错误。但是,如果启用插件,每当我加载一个主题时,就会出现以下错误,即使该主题没有任何事件。

控制台错误
rsvp.js:23 Uncaught 
TypeError: i(...)(...).magnificPopup is not a function
    at lightbox.js:55:19
    at _ (rsvp.js:434:1)
    at y (rsvp.js:420:1)
    at invoke (backburner.js.js:282:1)
    at h.flush (backburner.js.js:197:1)
    at p.flush (backburner.js.js:358:1)
    at B._end (backburner.js.js:798:1)
    at B.end (backburner.js.js:589:1)
    at B._run (backburner.js.js:842:1)
    at B.run (backburner.js.js:624:1)
    at e.run (index.js:75:1)
    at o.onload.o.onreadystatechange (load-script.js:38:9)

尽管错误似乎是在 rsvp.js 上抛出的,但禁用 events_rsvp 似乎并不能完全解决错误——只有完全禁用插件才能解决。据我所知,RSVP 功能本身是有效的。

现在,更令人困惑的是:似乎只有当主题中的帖子包含图片时,才会出现错误……但是,同样的主题,如果禁用了 events 插件,则不会出现错误。事件插件和帖子中的图片似乎以某种方式发生了交互,这很奇怪。

在尝试理解这个问题时,我注意到如果我启用了 实验性新灯箱,错误实际上就会消失,我猜是因为 Discourse 不再使用 magnificPopup() 而是新的灯箱。这似乎表明错误可能在灯箱代码中,但 events 插件似乎以某种方式暴露(并捕获)了它?鉴于 meta 上的实验性新灯箱设置已被禁用,我不清楚这是否会成为永久性的更改。

总之,有没有其他人运行最新版本的插件时遇到这些错误?就我而言,我正在运行 Discourse 的最新稳定版(v3.2.2)。