Question: I am using React datepicker and I built a component that changes the date using arrows, however, I created two functions and I want to
I am using React datepicker and I built a component that changes the date using arrows, however, I created two functions and I want to merged those two functions into one. Since the functions are virtually doing the same thing, and the only difference is the date parameter were sending in the we want to just have 1 function.
Here is the relevant code:
const [isOpen, setIsOpen] = useState(false);
const date = new Date(dateformat(dates.currentDate, "isoDate", true)+'T00:00:00.000');
const [calendarDate, setCalendarDate] = useState(date);
useEffect(() => {
setCalendarDate(calendarDate)
}, [calendarDate])
const handleChange = (e) => {
setIsOpen(!isOpen);
setCalendarDate(e);
const isoString = e.toISOString().substring(0,10);
history.push(`/${page}/${sport}/${isoString}`);
};
const handlePreviousClick = (e) => {
const newDate = new Date(dateformat(dates.previousDate, "isoDate", true)+'T00:00:00.000');
e.preventDefault();
if (dates.previousDate) {
setCalendarDate(newDate)
history.push(`/${page}/${sport}/${dates.previousDate}`);
}
};
const handleNextClick = (e) => {
const newDate = new Date(dateformat(dates.nextDate, "isoDate", true)+'T00:00:00.000');
e.preventDefault();
if (dates.nextDate) {
setCalendarDate(newDate)
history.push(`/${page}/${sport}/${dates.nextDate}`);
}
};
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
