ES6构建系统的FullCalendar:“初始视图”和“ headerToolbar”被忽略

发布于 2025-02-09 17:11:16 字数 2323 浏览 1 评论 0原文

我正在将基于脚本标签的FullCalendar设置移动到ES6构建系统One,并面临无法修复的怪异错误。

因此,我在main-calendar.js文件中将FullCalendar类和插件导入:

import { Calendar } from '@fullcalendar/core';
import listPlugin from "@fullcalendar/list"
import dayGridPlugin from "@fullcalendar/daygrid"
import timeGridPlugin from "@fullcalendar/timegrid"

然后,在同一文件中,我创建我的calendar object类似于此

    var calendar = new Calendar(calendarEl, {

        plugins: [listPlugin, dayGridPlugin, timeGridPlugin],

        initialView: "list",

        headerToolbar: {
            left: 'prev,next today',
            center: 'title',
            right: 'dayGridMonth,timeGridWeek,timeGridDay,listWeek'
        }

    })

:渲染但:

  • headerToolbar始终忽略。我可以将任何值添加到中心中,将永远是左和今天的日期,右
  • initialview也总是忽略了
  • 我唯一可以更改的内容是通过在plugins中更改插件的顺序 property Array中的初始视图。我可以在timegridplugindayGridplugin之间切换,它将更改初始视图。 ListPlugin但是,如果将首先放在数组中,则不会更改任何内容。

这是一个使用WebPack/Laravel Mix的Laravel网站。我的webpack配置:

mix.js('resources/js/Calendar/main-calendar.js', 'public/js')
mix.postCss('node_modules/@fullcalendar/core/main.css', 'public/css/fullcalendar/core.css')
    .postCss('node_modules/@fullcalendar/daygrid/main.css', 'public/css/fullcalendar/daygrid.css')
    .postCss('node_modules/@fullcalendar/timegrid/main.css', 'public/css/fullcalendar/timegrid.css')
    .postCss('node_modules/@fullcalendar/list/main.css', 'public/css/fullcalendar/list.css')
mix.sass('resources/sass/calendar.scss', 'public/css')

我很无知。我的Chrome控制台没有任何错误,如果无法修复此问题,我将不得不回滚到脚本标签方法。

编辑

在我的package.json文件中:

"dependencies": {
        ...
        "@fullcalendar/bootstrap": "^4.4.2",
        "@fullcalendar/core": "^4.4.2",
        "@fullcalendar/daygrid": "^4.4.2",
        "@fullcalendar/google-calendar": "^4.4.0",
        "@fullcalendar/interaction": "^4.4.2",
        "@fullcalendar/list": "^4.4.2",
        "@fullcalendar/timegrid": "^4.4.2",
        ...
        "fullcalendar": "^5.11.0",
        "fullcalendar-scheduler": "^5.10.2",
        ...

}

I'm moving my script tags based FullCalendar setup to an ES6 build system one and am facing a weird bug that I can't fix.

So I import the FullCalendar class and plugins in my main-calendar.js file like this:

import { Calendar } from '@fullcalendar/core';
import listPlugin from "@fullcalendar/list"
import dayGridPlugin from "@fullcalendar/daygrid"
import timeGridPlugin from "@fullcalendar/timegrid"

then, in the same file, I create my calendar object like this:

    var calendar = new Calendar(calendarEl, {

        plugins: [listPlugin, dayGridPlugin, timeGridPlugin],

        initialView: "list",

        headerToolbar: {
            left: 'prev,next today',
            center: 'title',
            right: 'dayGridMonth,timeGridWeek,timeGridDay,listWeek'
        }

    })

a calendar is rendered BUT:

  • headerToolbar is always ignored. I can add any value to left, center and right but what will be rendered will always be a date on the left and today+prev,next on the right
  • initialView also always ignored
  • the only thing i can change is the initial view by changing the order of the plugins in plugins property array. I can switch between timeGridPlugin and dayGridPlugin and it will change the initial view. listPlugin however, if put first in the array doesn't change anything.

It's a Laravel website using Webpack/Laravel mix. My Webpack config:

mix.js('resources/js/Calendar/main-calendar.js', 'public/js')
mix.postCss('node_modules/@fullcalendar/core/main.css', 'public/css/fullcalendar/core.css')
    .postCss('node_modules/@fullcalendar/daygrid/main.css', 'public/css/fullcalendar/daygrid.css')
    .postCss('node_modules/@fullcalendar/timegrid/main.css', 'public/css/fullcalendar/timegrid.css')
    .postCss('node_modules/@fullcalendar/list/main.css', 'public/css/fullcalendar/list.css')
mix.sass('resources/sass/calendar.scss', 'public/css')

I'm kindof clueless. I got no errors in my Chrome console and I'll have to rollback to a script tags approach if I can't fix this.

EDIT:

in my package.json file :

"dependencies": {
        ...
        "@fullcalendar/bootstrap": "^4.4.2",
        "@fullcalendar/core": "^4.4.2",
        "@fullcalendar/daygrid": "^4.4.2",
        "@fullcalendar/google-calendar": "^4.4.0",
        "@fullcalendar/interaction": "^4.4.2",
        "@fullcalendar/list": "^4.4.2",
        "@fullcalendar/timegrid": "^4.4.2",
        ...
        "fullcalendar": "^5.11.0",
        "fullcalendar-scheduler": "^5.10.2",
        ...

}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文