Ed *_*nce 5 javascript jquery fullcalendar
我试图在JavaScript中使用fullcalendar插件的Google日历模块.当我尝试加载谷歌日历时,控制台显示:
Uncaught TypeError: Cannot read property 'applyAll' of undefined
Run Code Online (Sandbox Code Playgroud)
错误发生在gcal.js的第23行:
21| var fc = $.fullCalendar;
22| console.log($.fullCalendar);
23| var applyAll = fc.applyAll;
Run Code Online (Sandbox Code Playgroud)
我添加的console.log()返回$ .fullCalendar为undefined,然后fc.applyAll也返回undefined.我对JS的了解还不足以完全理解这个文件中发生了什么,我不确定出了什么问题.
这是我的HTML:
<head>
<link rel='stylesheet' href='fullcalendar/fullcalendar.css' />
<script src='fullcalendar/lib/jquery.min.js'></script>
<script src='fullcalendar/gcal.js'></script>
<script src='fullcalendar/lib/moment.min.js'></script>
<script src='fullcalendar/fullcalendar.js'></script>
<link href='style.css' rel='stylesheet' />
</head>
<body>
<div id='calendar'></div>
</body>
Run Code Online (Sandbox Code Playgroud)
我的JavaScript:
$(document).ready(function() {
$('#calendar').fullCalendar({
googleCalendarApiKey: 'my-api-key',
events: {
googleCalendarId: 'my-calendar-id'
}
});
});
Run Code Online (Sandbox Code Playgroud)
我已经下载了最新版本的gcal.js(该文件似乎存在问题,该网站提供了最新版本的链接).
问题在于您导入库文件的顺序.
fullcalendar是一个jQuery插件,通常意味着它最终将作为jQuery对象的属性,例如$.fullCalendar.
现在,gcal文件依赖于那里的属性,因此它可以访问它上面的.applyAll方法,但是,在加载gcal.js之前加载fullcalendar.js.
如果您更改这样的顺序,它可以正常工作.
<script src='fullcalendar/lib/jquery.min.js'></script>
<script src='fullcalendar/lib/moment.min.js'></script>
<script src='fullcalendar/fullcalendar.js'></script>
<script src='fullcalendar/gcal.js'></script>
Run Code Online (Sandbox Code Playgroud)
根据经验,首先尝试将您知道的文件没有依赖项(它们不依赖于其他库).
| 归档时间: |
|
| 查看次数: |
2577 次 |
| 最近记录: |