How to get modal to auto-expand when react-datepicker is clicked? Modal fits initially, but then when you click on the date field and the react-datepicker shows the calendar, the react-modal dialog does not auto-expand?
Code:
import React, { useState } from 'react';
import Modal from 'react-modal';
import DatePicker from "react-datepicker";
import "react-datepicker/dist/react-datepicker.css";
const customStyles = {
content: {
top: '50%',
left: '50%',
right: 'auto',
bottom: 'auto',
marginRight: '-50%',
transform: 'translate(-50%, -50%)',
},
};
export default function TestPage2() {
const [modalIsOpen, setIsOpen] = React.useState(false);
const [startDate, setStartDate] = useState(new Date());
function openModal() {
setIsOpen(true);
}
function closeModal() {
setIsOpen(false);
}
return (
<div>
<button onClick={openModal}>Open Modal</button>
<Modal
isOpen={modalIsOpen}
onRequestClose={closeModal}
contentLabel="Example Modal"
style={customStyles}
>
<h3>Prior to Date Picker</h3>
<label htmlFor="Checkin Date">Checkin Date</label>
<DatePicker
selected={startDate}
// wrapperClassName="datePicker"
// className="form-control"
dateFormat="d MMMM yyyy"
name="checkinDate"
onChange={(date, event) => {
if (date) {
setStartDate(date)
}
}}
/>
<h3>After Date Picker</h3>
</Modal>
</div>
);
}
add the following property to your content object inside customStyles:
overflow: 'hidden'
and change the property values of react-datepicker-popper class :
.react-datepicker-popper {
position: static!important;
transform: none!important;
}
codesandbox: https://codesandbox.io/s/awesome-feather-mj81tz