v-calendar-scheduler
Version:
Calendar scheduler component for VueJs
87 lines (83 loc) • 19.1 kB
HTML
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Vue Calendar | Callbacks</title>
<meta name="description" content="Calendar scheduler component for VueJs">
<meta property="og:url" content="https://v-calendar.davidpaternina.com/">
<meta property="og:title" content="Vue Calendar Scheduler">
<meta property="og:description" content="Calendar scheduler component for VueJs">
<meta property="og:image" content="https://v-calendar.davidpaternina.com/assets/img/fb-jumbo.png">
<link rel="preload" href="/assets/css/0.styles.df06e255.css" as="style"><link rel="preload" href="/assets/js/app.233d7366.js" as="script"><link rel="preload" href="/assets/js/7.529a46be.js" as="script"><link rel="prefetch" href="/assets/js/4.1e6fe3d0.js"><link rel="prefetch" href="/assets/js/1.561fc534.js"><link rel="prefetch" href="/assets/js/2.24fa77b3.js"><link rel="prefetch" href="/assets/js/3.d6d810f1.js"><link rel="prefetch" href="/assets/js/5.3ae44317.js"><link rel="prefetch" href="/assets/js/6.c3810d63.js"><link rel="prefetch" href="/assets/js/8.1d03fc94.js"><link rel="prefetch" href="/assets/js/9.b1f1ce6a.js">
<link rel="stylesheet" href="/assets/css/0.styles.df06e255.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div><a href="/" class="home-link router-link-active"><!----><span class="site-name">
Vue Calendar
</span></a><div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""><!----></div><nav class="nav-links can-hide"><div class="nav-item"><a href="/" class="nav-link">Home</a></div><div class="nav-item"><a href="/guide/" class="nav-link router-link-active">Documentation</a></div><div class="nav-item"><a href="https://github.com/dapd007/v-calendar-scheduler/blob/master/CHANGELOG.md" target="_blank" rel="noopener noreferrer" class="nav-link">Changelog</a></div><a href="https://github.com/dapd007/v-calendar-scheduler" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header><div class="sidebar-mask"></div><div class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/" class="nav-link">Home</a></div><div class="nav-item"><a href="/guide/" class="nav-link router-link-active">Documentation</a></div><div class="nav-item"><a href="https://github.com/dapd007/v-calendar-scheduler/blob/master/CHANGELOG.md" target="_blank" rel="noopener noreferrer" class="nav-link">Changelog</a></div><a href="https://github.com/dapd007/v-calendar-scheduler" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav><ul class="sidebar-links"><li><div class="sidebar-group first"><p class="sidebar-heading open"><span>Guide</span><!----></p><ul class="sidebar-group-items"><li><a href="/guide/" class="sidebar-link">Introduction</a></li><li><a href="/guide/overview.html" class="sidebar-link">Overview</a></li><li><a href="/guide/getting-started.html" class="sidebar-link">Getting started</a></li><li><a href="/guide/config.html" class="sidebar-link">Config</a></li><li><a href="/guide/events.html" class="sidebar-link">Event model</a></li><li><a href="/guide/callbacks.html" class="active sidebar-link">Callbacks</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/guide/callbacks.html#view-callbacks" class="sidebar-link">View callbacks</a></li><li class="sidebar-sub-header"><a href="/guide/callbacks.html#day-time-callbacks" class="sidebar-link">Day/Time callbacks</a></li><li class="sidebar-sub-header"><a href="/guide/callbacks.html#event-callbacks" class="sidebar-link">Event callbacks</a></li></ul></li><li><a href="/guide/customization.html" class="sidebar-link">Customization</a></li><li><a href="/guide/demos.html" class="sidebar-link">Demos</a></li></ul></div></li></ul></div><div class="page"><div class="content"><h1 id="callbacks"><a href="#callbacks" aria-hidden="true" class="header-anchor">#</a> Callbacks</h1><p>Each calendar instance has a few callbacks you can hook onto:</p><pre class="language-vue"><code><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>template</span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>vue-scheduler</span>
<span class="token attr-name">@month-changed</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">"</span>monthChanged<span class="token punctuation">"</span></span>
<span class="token attr-name">@week-changed</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">"</span>weekChanged<span class="token punctuation">"</span></span>
<span class="token attr-name">@day-changed</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">"</span>dayChanged<span class="token punctuation">"</span></span>
<span class="token attr-name">@view-changed</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">"</span>viewChanged<span class="token punctuation">"</span></span>
<span class="token attr-name">@day-clicked</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">"</span>dayClicked<span class="token punctuation">"</span></span>
<span class="token attr-name">@time-clicked</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">"</span>timeClicked<span class="token punctuation">"</span></span>
<span class="token attr-name">@event-clicked</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">"</span>eventClicked<span class="token punctuation">"</span></span>
<span class="token attr-name">@event-created</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">"</span>eventCreated<span class="token punctuation">"</span></span>
<span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>vue-scheduler</span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>template</span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>script</span><span class="token punctuation">></span></span><span class="token script language-javascript">
<span class="token keyword">export</span> <span class="token keyword">default</span> <span class="token punctuation">{</span>
methods<span class="token punctuation">:</span> <span class="token punctuation">{</span>
<span class="token function">monthChanged</span><span class="token punctuation">(</span>newDate<span class="token punctuation">)</span> <span class="token punctuation">{</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'Month Changed'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span>newDate<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token function">weekChanged</span><span class="token punctuation">(</span>newDate<span class="token punctuation">)</span> <span class="token punctuation">{</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'Week Changed'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span>newDate<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token function">dayChanged</span><span class="token punctuation">(</span>newDate<span class="token punctuation">)</span> <span class="token punctuation">{</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'Day Changed'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span>newDate<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token function">viewChanged</span><span class="token punctuation">(</span>newView<span class="token punctuation">)</span> <span class="token punctuation">{</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'View Changed'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span>newView<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token function">dayClicked</span><span class="token punctuation">(</span>date<span class="token punctuation">)</span> <span class="token punctuation">{</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'Day clicked'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span>date<span class="token punctuation">.</span><span class="token function">getDate</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token function">timeClicked</span><span class="token punctuation">(</span>dateWithTime<span class="token punctuation">)</span> <span class="token punctuation">{</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'Time clicked'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'Date: '</span> <span class="token operator">+</span> dateWithTime<span class="token punctuation">.</span>date <span class="token punctuation">)</span><span class="token punctuation">;</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'Time: '</span> <span class="token operator">+</span> dateWithTime<span class="token punctuation">.</span>time <span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token function">eventClicked</span><span class="token punctuation">(</span>event<span class="token punctuation">)</span> <span class="token punctuation">{</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'Event clicked'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span>event<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token function">eventCreated</span><span class="token punctuation">(</span>event<span class="token punctuation">)</span> <span class="token punctuation">{</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'Event created'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span>event<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span>
</span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>script</span><span class="token punctuation">></span></span>
</code></pre><h2 id="view-callbacks"><a href="#view-callbacks" aria-hidden="true" class="header-anchor">#</a> View callbacks</h2><table><thead><tr><th>Callback</th><th>Description</th><th>Payload</th></tr></thead><tbody><tr><td>month-changed</td><td>Emitted when the user goes from one month to another on the <code>month</code> view.</td><td><code>Date</code> object</td></tr><tr><td>week-changed</td><td>Emitted when the user goes from one week to another on the <code>week</code> view.</td><td><code>Date</code> object</td></tr><tr><td>day-changed</td><td>Emitted when the user goes from one day to another on the <code>day</code> view.</td><td><code>Date</code> object</td></tr><tr><td>view-changed</td><td>Emitted when the user switches views.</td><td>View name (<code>month</code>, <code>week</code>, <code>day</code>)</td></tr></tbody></table><h2 id="day-time-callbacks"><a href="#day-time-callbacks" aria-hidden="true" class="header-anchor">#</a> Day/Time callbacks</h2><table><thead><tr><th>Callback</th><th>Description</th><th>Payload</th></tr></thead><tbody><tr><td>day-clicked</td><td>Emitted when the user on a day on the <code>month</code> view.</td><td><code>Date</code> object</td></tr><tr><td>time-clicked</td><td>Emitted when the user on a time on the <code>week</code> and <code>day</code> views.</td><td><code>Object</code> containing <code>date</code> and <code>time</code></td></tr></tbody></table><h2 id="event-callbacks"><a href="#event-callbacks" aria-hidden="true" class="header-anchor">#</a> Event callbacks</h2><table><thead><tr><th>Callback</th><th>Description</th><th>Payload</th></tr></thead><tbody><tr><td>event-clicked</td><td>Emitted when the user clicks on an event on <strong>any</strong> view.</td><td><code>Event</code> object</td></tr><tr><td>event-created</td><td>Emitted when a new event is created using the Event dialog.</td><td><code>Object</code> containing <code>date</code> and <code>time</code></td></tr></tbody></table><div class="tip custom-block"><p class="custom-block-title">TIP</p><p>Remember that any event created using the dialog is <strong>automatically pushed</strong> to the <code>events</code> array. You don't need to do this yourself, the callback is there in case you need to perform more logic with new event.</p></div></div><div class="content edit-link"><a href="https://github.com/dapd007/v-calendar-scheduler/edit/master/docs/guide/callbacks.md" target="_blank" rel="noopener noreferrer">Edit this page</a><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div><div class="content page-nav"><p class="inner"><span class="prev">
← <a href="/guide/events.html" class="prev">
Event model
</a></span><span class="next"><a href="/guide/customization.html">
Customization
</a> →
</span></p></div></div></div></div>
<script src="/assets/js/7.529a46be.js" defer></script><script src="/assets/js/app.233d7366.js" defer></script>
</body>
</html>