解決したい課題
「Uncaught TypeError: fullcalendar_1.registerEventSourceDef is not a function」というエラーを解決したい。
現状
以下のエラーがでる。
以下のサイトでは、上記の原因は以下のコードがないからだと書いてあた。
https://www.it-swarm.dev/ja/javascript/fullcalendar-[typeerror%EF%BC%9A%EF%BC%88%EF%BC%89%E3%80%82fullcalendar%E3%81%AF%E9%96%A2%E6%95%B0%E3%81%A7%E3%81%AF%E3%81%82%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93/1049449378/](https://www.it-swarm.dev/ja/javascript/fullcalendar-typeerror%EF%BC%9A%EF%BC%88%EF%BC%89%E3%80%82fullcalendar%E3%81%AF%E9%96%A2%E6%95%B0%E3%81%A7%E3%81%AF%E3%81%82%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93/1049449378/)
※エラー内容は同じではないが、似ているので原因は同じかもしれないと思てます。
以下のサイトでも、まず初めに以下のファイルを<head>に記述することだそうです。
https://qiita.com/kotazi_/items/1fb09e3cf1053ca75683
<link rel='stylesheet' href='fullcalendar/fullcalendar.css' /> <script src='lib/jquery.min.js'></script> <script src='lib/moment.min.js'></script> <script src='fullcalendar/fullcalendar.js'></script>
私がダウンロードしたpackagesフォルダには上記ファイルがありません(>_<)ぴえん
そこで、jqueryとmomentをダウンロードして、jsフォルダを作成し、格納しました。
https://jquery.com/download/
https://momentjs.com/
fullcalendar.jsは探しても見つかりません。また、記事によってはfullcalendar.min.jsと書いてあるものもありましたが、探してもありません。とりま無視します。
再度、エラー確認すると。。。
ふぇー、最初のエラーが変わらずでています。また、別のエラーまでついてきた。。
どすればいいのか、わかりません。
どなたか、アドバイスなどありましたら、ご教示願います。(>_<)オネガイシマス
追記
コード
※必要最低限の部分だけ抜粋してます。(ナビバーとフッターの記述を削除しただけ)
カレンダは想定通り表示されてますが、入力したカレンダIDのイベントがfullcalendarに反映されず、前述のエラーで苦しんでます。
※ <script src="../cdnjs/gcal.js"></script>をコメントアウトするとエラーは消えます。
※gcal.jsはGoogleカレンダとfullcalendarに同期させるために必要なファイルだと思い、記述しております。以下のサイトを参考にしてました。
https://arts-factory.net/fullcalendar/
<html lang="ja"> <head> <meta charset="utf-8"> <title>TEST5サイト</title> <link rel="stylesheet" href="../css/styles.css"> <link href='../packages/core/main.css' rel='stylesheet' /> <link href='../packages/daygrid/main.css' rel='stylesheet' /> <link href="../packages/timegrid/main.css" rel="stylesheet" /> <link href="../packages/list/main.css" rel="stylesheet" /> <script src='../packages/core/main.js'></script> <script src='../packages/daygrid/main.js'></script> <script src="../packages/core/locales-all.js"></script> <script src="../packages/interaction/main.js"></script> <script src="../packages/timegrid/main.js"></script> <script src="../packages/list/main.js"></script> <script src="../cdnjs/gcal.js"></script> <!-- <script src='../js/jquery.min.js'></script> --> <!-- <script src='../js/moment.min.js'></script> --> <meta name="description" content="テスト"> <link rel="icon" href="../img/favicon.ico"> <script> document.addEventListener('DOMContentLoaded', function() { var calendarEl = document.getElementById('calendar'); var calendar = new FullCalendar.Calendar(calendarEl, { plugins: [ 'interaction', 'dayGrid', 'timeGrid', 'list' ], header: { left: 'prev,next today', center: 'title', right: 'dayGridMonth,timeGridWeek,timeGridDay,listMonth' }, locale: 'ja', businessHours: true, navLinks: true, eventTimeFormat: { hour: 'numeric', minute: '2-digit' }, googleCalendarApiKey: '(ここはAPIキー入力してます)', googleCalendarId: '(ここはカレンダID入力してます)' }); calendar.render(); }); </script> <style> body { padding: 0; font-family: Arial, Helvetica Neue, Helvetica, sans-serif; font-size: 14px; } #calendar { max-width: 900px; margin: 0 auto; } </style> </head> <body> </header> <section class="TEST5"> <div id='calendar'></div> </section> </body> </html>
回答1件
あなたの回答
tips
プレビュー