http://localhost:8090/*
)Google Calendar API
<head>
์ <link>
์ <script>
ํ๊ทธ ๋ณต์ฌ<link href="https://cdn.jsdelivr.net/npm/fullcalendar@6.1.17/index.global.min.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/npm/fullcalendar@6.1.17/index.global.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/@fullcalendar/google-calendar@6.1.17/index.global.min.js"></script>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>FullCalendar + Google Calendar ์ฐ๋</title>
<link href="https://cdn.jsdelivr.net/npm/fullcalendar@6.1.17/index.global.min.css" rel="stylesheet" />
<script src='https://cdn.jsdelivr.net/npm/fullcalendar@6.1.17/index.global.min.js'></script>
<script src='https://cdn.jsdelivr.net/npm/@fullcalendar/google-calendar@6.1.17/index.global.min.js'></script>
<script>
document.addEventListener('DOMContentLoaded', function() {
var calendarEl = document.getElementById('calendar');
var calendar = new FullCalendar.Calendar(calendarEl, {
initialView: 'dayGridMonth',
googleCalendarApiKey: 'AIzaSyA***********************wDw', // โ ์ค์ API ํค
events: {
googleCalendarId: '64a6...f5229f@group.calendar.google.com' // โ ๊ณต๊ฐ ์บ๋ฆฐ๋ ID
},
eventClick: function(info) {
info.jsEvent.preventDefault(); // ๊ธฐ๋ณธ ์ด๋ ๋์ ๋ฐฉ์ง
console.log(info); // ์ ์ฒด ์ด๋ฒคํธ ์ ๋ณด ์ถ๋ ฅ
console.log(info.event._def.title); // ์ด๋ฒคํธ ์ ๋ชฉ ์ถ๋ ฅ
info.el.style.borderColor = 'red'; // ํด๋ฆญ ์ ํ
๋๋ฆฌ ์์ ๋ณ๊ฒฝ
}
});
calendar.render();
});
</script>
</head>
<body>
<h1>FULLCALENDAR + GOOGLE CALENDAR ์ฐ๋</h1>
<div id='calendar'></div>
</body>
</html>
eventClick
์ ํ์ฉํ๋ฉด ์ฌ์ฉ์์ ์ธํฐ๋์
์ ์ธ๋ฐํ๊ฒ ์ฒ๋ฆฌํ ์ ์์ด ์ค๋ฌด ํ์ฉ๋๊ฐ ๋๋ค.ํญ๋ชฉ | ๋ด์ฉ |
---|---|
API ํ๋ซํผ | Google Calendar API |
ํ๋ก ํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ | FullCalendar v6 |
์ฐ๋ ๋ฐฉ์ | API ํค + ๊ณต๊ฐ ์บ๋ฆฐ๋ ID |
์ฃผ์ ๊ธฐ๋ฅ | ์ผ์ ํ์, ํด๋ฆญ ์ด๋ฒคํธ ์ฒ๋ฆฌ |
๊ฒฐ๊ณผ | HTML์์ Google Calendar ์ผ์ ์ถ๋ ฅ + ํด๋ฆญ ๊ธฐ๋ฅ ๊ตฌํ ์๋ฃ |
โ ๋ง๋ฌด๋ฆฌ ํ
Google Calendar์ ์๋ก์ด ์ผ์ ์ ์ถ๊ฐํ๋ฉด, ์ฐ๋๋ FullCalendar์์๋ ์๋์ผ๋ก ๋ฐ์๋๋ค!
๊ฑฐ์ ์ค์๊ฐ์ผ๋ก ์ฐ๋๋๋ฉฐ ์ฌ์ฉ์์๊ฒ ์ต์ ์ผ์ ์ ์ ๊ณตํ ์ ์๋ค.