【问题标题】:FullCalendar unknown option 'dateClick'FullCalendar 未知选项 'dateClick'
【发布时间】:2020-08-04 12:13:26
【问题描述】:

我有一个 rails 6 应用程序,并按照 official docs(使用 yarn 和 webpacker)添加了 FullCalendar

当我运行服务器时,日历显示正确,点击事件也可以,但点击日期没有任何作用。在开发人员工具中,我收到消息:未知选项“dateClick”。

我的 calendar.js 看起来像这样:

  import { Calendar } from "@fullcalendar/core";

  import dayGridPlugin from "@fullcalendar/daygrid";

  import timeGridPlugin from "@fullcalendar/timegrid";

  import listPlugin from "@fullcalendar/list";

  import interactionPlugin from "@fullcalendar/interaction";

  import bootstrapPlugin from "@fullcalendar/bootstrap";

  import nlLocale from "@fullcalendar/core/locales/nl";

  document.addEventListener("DOMContentLoaded", function() {
    const calendarEl = document.getElementById("calendar");

    const calendar = new Calendar(calendarEl, {
      plugins: [
        dayGridPlugin,
        timeGridPlugin,
        listPlugin,
        interactionPlugin,
        bootstrapPlugin
      ],
      themeSystem: "bootstrap",
      initialView: "dayGridMonth",
      eventClick(info) {
        console.log("Event clicked")
      },
      dateClick(info) {
        console.log("Date clicked")
      }
    });
    calendar.render();
  });

当我从 node_modules/@fullcalendar/interaction/main.js 复制代码并将其粘贴到另一个文件中并从那里导入时,它可以工作。

【问题讨论】:

    标签: ruby-on-rails webpack fullcalendar fullcalendar-5


    【解决方案1】:

    问题是@fullcalendar/core 安装了5.1.0 版,而@fullcalendar/interaction 安装了5.2.0 版。

    @fullcalendar/core 升级到 5.2.0 解决了这个问题。

    【讨论】:

    • 我遇到了同样的问题,将所有插件安装在同一版本中解决了这个问题; 5.3.0
    【解决方案2】:

    你试过了吗

     eventClick: function(info) {
    

     dateClick: function(info) {
    

    而不是

    eventClick(info) {
    ...
    dateClick(info) {
    

    【讨论】:

    • 这没有任何区别,就像我说的 eventClick 确实有效。只有 dateClick 没有。
    • 你是对的。不管是 dateClick(info) 还是 dateClick: function(info)。
    • 我从 eventClick 开始尝试使用您的代码:到目前为止没有发现问题。也许缺少插件?
    • 我用yarn add @fullcalendar/interaction添加了交互插件,我可以看到它在node_modules文件夹中。
    • 抱歉插嘴。我对Ruby一无所知。我认为这可能是代码中的一个非常小的故障。我刚刚使用“正常”实现进行了测试。
    【解决方案3】:

    如果有人在实现 FullCalendar 的 dateClick 时遇到此错误。我使用 5.6 的版本解决了这个问题。所有包必须具有相同的版本

    npm install @fullcalendar/daygrid@5.6
    npm install @fullcalendar/interaction@5.6
    npm install @fullcalendar/vue@5.6
    

    【讨论】:

    • 这并不能真正回答问题。如果您有其他问题,可以点击 提问。要在此问题有新答案时收到通知,您可以follow this question。一旦你有足够的reputation,你也可以add a bounty 来引起对这个问题的更多关注。 - From Review
    猜你喜欢
    • 2021-08-16
    • 1970-01-01
    • 1970-01-01
    • 2023-04-04
    • 1970-01-01
    • 2022-06-15
    • 1970-01-01
    • 2018-03-29
    • 2021-01-17
    相关资源
    最近更新 更多