У меня есть простой раздел, в котором я показываю календарь для своих пользователей, используя полный API-интерфейс календаря. Я хочу отключить только даты за предыдущий месяц в reactjs.
выберите разрешить документы
Здесь работает демоверсия с использованием jquery, я хочу то же самое, но в reactjs JSFIDDLE демо
Ожидаемый результат
Вот то, что я пробовал до сих пор, используя полную документацию календаря
Вот мой компонент
import React, { useState, useEffect, useContext, useRef } from 'react';
import { Calendar as FullCalendar } from '@fullcalendar/core';
import googleCalendarPlugin from '@fullcalendar/google-calendar';
import dayGridPlugin from '@fullcalendar/daygrid';
import timeGridPlugin from '@fullcalendar/timegrid';
import interactionPlugin from '@fullcalendar/interaction';
import momentPlugin from '@fullcalendar/moment';
import moment from 'moment'
const Calendar = (movieProps) => {
const [calendar, setCalendar] = useState('');
const calendarRef = useRef('');
useEffect(() => {
if (calendarRef.current && !calendar) {
setCalendar(new FullCalendar(calendarRef.current, {
plugins: [dayGridPlugin, momentPlugin, timeGridPlugin, interactionPlugin, googleCalendarPlugin],
columnHeader: false,
fixedWeekCount: false,
backgroundColor: 'transparent',
header: {
left: 'prev,next today',
center: 'title',
right: 'dayGridMonth,listYear',
},
selectable: true,
//disable past date of previous month
selectAllow: function(selectInfo) {
var ms = moment().startOf("month");
return ms.isSameOrBefore(selectInfo.start);
},
events: [{
title: 'Womens History Month ',
start: '2020-03-01',
description: ' support for womens rights and progress throughout the month of March.Get this video',
url: 'dev91b558163211cf9d2e7d1efe6c3e32035973fdf9',
classNames: ['event1']
}
],
}));
}
}, [calendarRef.current]);
return (
<>
<CalendarContainer ref={calendarRef}>
{calendar && calendar.render ? calendar.render(): null}
</CalendarContainer>
</>
)
}
export default Calendar;
ПРИМЕЧАНИЕ: я использую полный календарь v4, момент js загружен, я вижу его в консоли
К сожалению, мое решение не работает вообще.
Что мне нужно делать, чтобы добиться того, что я хочу?