fullcalendar 相关问题

Fullcalendar是由Adam Shaw开发的一个库,它通过AJAX(以及其他方法)加载事件,并在日历/议程显示中显示它们。

我们可以在 timeGrid 中显示时间在顶部和日期在侧面吗

我想在顶部显示时间,在侧面显示天数和其他内容。 我正在使用完整日历 6.1 我想将时间显示为行而不是列。 全日历 我想在上面显示时间,在上面显示天数和其他...

回答 1 投票 0

Angular 16 Full Calendar加载数据问题

我遇到的问题是由于使用 FullCalendar 的 Angular 应用程序中的异步数据加载滞后造成的。最初,当组件加载时,日历显示为空,因为它正在撕裂......

回答 1 投票 0

对resourceTimeGridPlugin fullcalender 中的资源排序不起作用

资源列表在提供给完整日历组件时会进行排序,但会自动随机排序。

回答 2 投票 0

使用React+Typescript在FullCalendar中同时拖动多个元素

我的 React 应用程序在使用 FullCalendar 和 FullCalendar Interaction 中的 Draggable 时遇到问题。当我尝试将“Bölgeler”div 中的一个块拖到

回答 1 投票 0

FullCalendar 事件源错误:未捕获(承诺中)类型错误:rawEvents 不可迭代

我使用 PHP 生成 JSON,并在加载 FullCalendar 并使用 eventSources 选项指向 PHP 脚本时在控制台中收到错误。发送的 JSON 由 JSONLint 验证如下...

回答 1 投票 0

如何更新完整日历中单个日历项目的 UI?

我想更改每个日历项目在此完整日历中的呈现方式。有办法做到这一点吗?我已经使用 renderCellContents 来更新整个日历日期单元格。但是

回答 1 投票 0

JQuery:FullCalendar 插件:事件不显示在周视图和日视图中,但显示在月视图中

我有以下代码来获取事件: $('#calendar').fullCalendar({ 主题:真实、 槽分钟:10, 标题:{ left: '上一个,下一个今天', 中心:'标题', 右:'月,议程周,议程日', },

回答 4 投票 0

有没有办法使用自定义范围?

我正在尝试实现自定义日期范围,有没有办法使用 ref api 来做到这一点?我使用自定义工具栏组件,其中有下一个、今天、上一个按钮与日历参考一起使用,但我也...

回答 1 投票 0

将多个具有不同键的 Google 日历添加到 FullCalendar

虽然我完全理解文档中给出的说明(为了完整性,如下所示...),但不清楚如何添加需要不同 Google 密钥的任何其他 Google 日历。

回答 1 投票 0

全日历活动未显示

尝试在 FullCalendar 上显示单个事件 从“svelte”导入{onMount}; 进口 { 日历, 输入EventApi, 输入 EventDropA...</desc> <question vote="0"> <p>尝试在 FullCalendar 上显示单个事件</p> <pre><code>&lt;script lang=&#34;ts&#34;&gt; import { onMount } from &#34;svelte&#34;; import { Calendar, type EventApi, type EventDropArg, } from &#34;@fullcalendar/core&#34;; import interactionPlugin, { type EventResizeDoneArg, } from &#34;@fullcalendar/interaction&#34;; import resourceTimeGridPlugin from &#34;@fullcalendar/resource-timegrid&#34;; import luxon2Plugin from &#34;@fullcalendar/luxon2&#34;; import scrollGridPlugin from &#34;@fullcalendar/scrollgrid&#34;; import { millisecondsToTime } from &#34;../utils/time&#34;; // Import other necessary plugins and styles if needed import { createEventDispatcher } from &#34;svelte&#34;; import { CalendarEvent, type SelectionInfo } from &#34;../types/event&#34;; import { roundTo } from &#34;../utils/common&#34;; import type { CalendarResource } from &#34;../types/calendar&#34;; export let resources: CalendarResource[]; let calendar: Calendar; let dragging = false; let resizing = false; let events = []; const dispatch = createEventDispatcher(); const eventContent = (arg: EventApi): { html: string } =&gt; { let htm = CalendarEvent.fromEventApi(arg.event).innerHTML; console.log(htm); return { // @ts-ignore html: htm, }; }; const fetchResources = ( _fetchInfo: any, successCallback: any, _failureCallback: any ) =&gt; { resources = [ { id: 1, title: &#34;monday&#34;, businessHours: [ { startTime: &#34;00:00&#34;, endTime: &#34;23:00&#34;, daysOfWeek: [0, 2, 3], }, ], }, { id: 2, title: &#34;tuesday&#34;, businessHours: [ { startTime: &#34;00:00&#34;, endTime: &#34;23:00&#34;, daysOfWeek: [0, 2, 3], }, ], }, ]; successCallback(resources); }; const eventDragStart = () =&gt; { dragging = true; }; const eventDragStop = () =&gt; (dragging = false); const eventDrop = (eventInfo: EventDropArg) =&gt; { const { event, newResource, revert } = eventInfo; saveEvent(event); dispatch(&#34;eventDrop&#34;, { id: +event.id, updateData: { happeningOn: event.start?.toISOString(), }, revert, }); }; const eventResizeStart = () =&gt; (resizing = true); const eventResizeStop = () =&gt; (resizing = false); const eventResize = (eventInfo: EventResizeDoneArg) =&gt; { const { event, revert } = eventInfo; const startDate: Date = event.start || new Date(); const endDate: Date = event.end || new Date(); const duration = millisecondsToTime( roundTo(endDate.getTime() - startDate.getTime(), 90000) ); dispatch(&#34;eventResize&#34;, { id: +event.id, updateData: { duration, happeningOn: startDate.toISOString(), }, revert, }); }; const select = (selectionInfo: SelectionInfo) =&gt; { const { start, end, resource } = selectionInfo; const { id, title } = resource?._resource || {}; const newEvent = { resource: { id, title, }, start, end, }; saveEvent(newEvent); dispatch(&#34;eventSelect&#34;, { start, end, resource: { id, title, }, }); }; const saveEvent = (event: any) =&gt; { // Retrieve existing events from local storage const existingEvents = JSON.parse( localStorage.getItem(&#34;calendarEvents&#34;) || &#34;[]&#34; ); // Add the new event to the existing events existingEvents.push(event); // Save the updated events array to local storage localStorage.setItem(&#34;calendarEvents&#34;, JSON.stringify(existingEvents)); }; onMount(() =&gt; { // Set your New Zealand timezone const nzTimeZone = &#34;Pacific/Auckland&#34;; // Initialize the calendar calendar = new Calendar(document.getElementById(&#34;calendar&#34;)!, { locale: &#34;en&#34;, timeZone: nzTimeZone, plugins: [ interactionPlugin, luxon2Plugin, resourceTimeGridPlugin, resourceTimeGridPlugin, scrollGridPlugin, ], initialView: &#34;resourceTimeGridWeek&#34;, headerToolbar: { start: &#34;today,prev,next&#34;, center: &#34;title&#34;, end: &#34;resourceTimeGridWeek,resourceTimeGridDay&#34;, }, scrollTime: null, selectable: true, selectMirror: true, selectOverlap: false, unselectAuto: false, allDaySlot: false, slotDuration: &#34;00:30&#34;, snapDuration: &#34;02:30&#34;, dayMinWidth: 120, slotLabelFormat: { hour: &#34;2-digit&#34;, minute: &#34;2-digit&#34;, omitZeroMinute: false, meridiem: &#34;short&#34;, }, editable: true, resourceOrder: &#34;title&#34;, resources: fetchResources, // Event handlers datesSet: handleDates, events: fetchEvents, eventContent, eventClick, eventDragStart, eventDragStop, eventDrop, eventResizeStart, eventResizeStop, eventResize, select, eventAllow: (dropInfo, draggedEvent) =&gt; { return true; }, }); calendar.render(); calendar.refetchEvents(); }); function handleDates(arg: any) { // Handle dates set event console.log(&#34;Dates set:&#34;, arg); } // Other event handling functions... const destroyEvents = () =&gt; { if (events) events.forEach((event: CalendarEvent) =&gt; event.destroy()); }; function fetchEvents( _info: any, successCallback: (events: any[]) =&gt; void, _failureCallback: any ) { // Hardcoded event data const eventsData = [ { id: 1, title: &#34;Hardcoded Event&#34;, start: &#34;2023-11-29T06:15:00&#34;, }, ]; // return eventsData; // Call the successCallback with the hardcoded event data successCallback(eventsData); } function eventClick(arg: any) { // Handle event click console.log(&#34;Event clicked:&#34;, arg); } const renderCalendar = () =&gt; { if (calendar) calendar.refetchResources(); }; $: { if (resources) // update calendar every time resources change renderCalendar(); } &lt;/script&gt; &lt;div id=&#34;calendar&#34;&gt;&lt;/div&gt; </code></pre> <p>由于某种原因,该事件似乎已到达日历,因为它不允许我拖动时间,但该事件并未显示。此外,当我将控制台日志放入 eventContent 时,不会记录任何内容,但是当我拖动日历来创建事件时,它会记录日志。我不确定事件在哪里丢失。或者是否可能是由于插件所致。</p> </question> <answer tick="false" vote="0"> <p>由于您使用 <a href="https://fullcalendar.io/docs/vertical-resource-view" rel="nofollow noreferrer">resourceTimeGridWeek</a> 作为默认视图(这是一个资源感知视图),因此您将看不到已添加的事件,因为您没有为其指定与中的资源之一匹配的 <pre><code>resourceId</code></pre>日历。因此,fullCalendar 不知道在哪里显示它 - 该视图没有用于不属于资源的事件的区域。</p> <p>例如你可以写:</p> <pre><code>const eventsData = [ { id: 1, title: &#34;Hardcoded Event&#34;, start: &#34;2023-11-29T06:15:00&#34;, resourceId: 1 }, ]; </code></pre> <p>请参阅 <a href="https://fullcalendar.io/docs/resources-and-events" rel="nofollow noreferrer">https://fullcalendar.io/docs/resources-and-events</a> 了解更多信息</p> </answer> </body></html>

回答 0 投票 0

有没有办法修改事件输出而不是使用 eventContent 完全重新构建它?

在 fullCalendar v3 中,带有 HTML 实体的内容在浏览器中正确呈现。对于 fullCalendar v6,它按原样显示: https://codepen.io/brianhogg/pen/LYqBaWz?editors=001 虽然我已经...

回答 1 投票 0

添加/删除事件源 FullCalendar

我希望能够根据添加和删除事件源来过滤事件。我找不到这样做的好例子。 .fullCalendar( 'addEventSource', 源 ) .fullCalendar( '

回答 3 投票 0

fullcalendar 为我的日期选择添加了 1 天

我遇到了日历问题。我使用 FullCalendar 来选择日期范围。例如,当我选择 11/20/23 到 11/22/23 时。 Fullcalendar 又增加了 1 天(参见屏幕)。 这就是我

回答 1 投票 0

完整日历字体大小

我在将日历字体大小设置得较小时遇到问题。 我已经更改了容器div字体大小的设置,没有效果。 我还将 fullCalender.css 字体从 1em 更改为 0.5em ...

回答 7 投票 0

只需在全日历中单击两次即可打开模式

我正在使用 fullcalendar 创建日历,如下面的代码所示: document.addEventListener('DOMContentLoaded', function() { if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera...

回答 1 投票 0

如何让FullCalendar vue3组件刷新?

我正在将 FullCalendar vue3 组件与 Laravel Breeze/Vue 一起使用,但我无法在需要时刷新日历。我希望日历在选择元素更改后刷新...

回答 1 投票 0

如何禁用全日历中的日期(按日期)?

我在javascript中使用当前最新的fullcaldendar.io(v6.1.4)库。我可以在月视图中按日期范围(开始日期到停止日期)禁用天数(灰色)。 我的问题:我如何禁用特定的...

回答 1 投票 0

在完整日历水平视图上设置滚动条位置

我们正在使用完整的日历时间视图,更具体地说是时间线视图。 它工作得很好,但是有一个问题非常令人沮丧,那就是当您访问年视图和 scro 时......

回答 2 投票 0

如何在 FullCalendar React 中创建粘性标题工具栏?

我正在使用 FullCalendar React 组件,并且想要实现一个粘性标题工具栏。我的目标是确保标题及其工具栏在日历顶部保持可见,

回答 1 投票 0

检测后台事件

我在我的项目中使用 FullCalendar。我使用了后台事件,rendering=“background”。如何检测用户是否点击了后台事件?我尝试了这个,但它不起作用,因为所有日期都不能......

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.