AlexanderMarginal
@AlexanderMarginal
Frontend web developer

Почему не работает drag n drop в fullcalendar v5?

В приложении был установлен fullcalendar 3 версии с использованием jquery.
обновились до 5й версии (нативной) и делаем render() по id внутри vue приложения.
В приложении так же используются iscroll, fancybox.
Приложение монолитное и постепенно переезжает сейчас на vue, поэтому пока что на php очень много вещей загружаются одновременно на страницу.
Суть проблемы: раньше drag n drop работал. С новой реализацией он перестал работать. Исполнение кода не доходит до handleTouchMove / handleMouseMove.
Пробовали сделать реализацию без vue на чистой странице - тоже не работает.
У меня нет идей как можно отдебажить это, чтобы понять в чем проблема, может быть проблема где-то в создании инстанса?
Моя реализация:
import { Calendar } from '@fullcalendar/core';
import interactionPlugin from '@fullcalendar/interaction';
import ruLocale from "@fullcalendar/core/locales/ru";
import {DF_2_DIGIT, DF_NUMERIC, DF_SHORT} from "@constants/dateDormats";
import timeGridPlugin from "@fullcalendar/timegrid";

/**
 * @param {HTMLElement} element
 * @param {number} height
 * @param {function} onDatesSet
 * @param {function} getEvents
 * @param {function} onEventClick
 * @return {Calendar}
 */
export default function createCalendar(element, height, {
    onDatesSet,
    getEvents,
    onEventClick,
}) {
    const calendar = new Calendar(element, {
        events: getEvents,
        datesSet: onDatesSet,
        eventClick: onEventClick,
        click: info => {
            console.log(info)  
        },
        plugins: [
            timeGridPlugin,
            interactionPlugin,
        ],
        editable: true,
        contentHeight: height,
        height,
        hiddenDays: [0, 6],
        progressiveEventRendering: true,
        nowIndicator: true,
        locale: ruLocale,
        allDaySlot: false,
        headerToolbar: false,
        dayHeaderFormat: {
            weekday: DF_SHORT,
            day: DF_NUMERIC,
        },
        scrollTime: '20:00',
        eventColor: '#fff',
        defaultTimedEventDuration: '01:00:00',
        displayEventEnd: true,
        slotLabelFormat: {
            hour: DF_NUMERIC,
            minute: DF_2_DIGIT,
            omitZeroMinute: false,
        },
        expandRows: true,
        slotMinTime: '08:00:00',
        slotMaxTime: '20:00:00',
    });
    return calendar;
}


Я отключил все, что можно было отключить на странице (jquery, все неиспользуемые компонены, меню, "стакан" с задачами), но drag-and-drop все равно не работает.
  • Вопрос задан
  • 39 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы