ES6构建系统的FullCalendar:“初始视图”和“ headerToolbar”被忽略
我正在将基于脚本标签的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中的初始视图。我可以在timegridplugin
和dayGridplugin
之间切换,它将更改初始视图。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 toleft
,center
andright
but what will be rendered will always be a date on the left and today+prev,next on the rightinitialView
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 betweentimeGridPlugin
anddayGridPlugin
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 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论