Я создаю таблицу. Я добавил onMonseUp и onClick в один и тот же компонент. Когда пользователь щелкает и перетаскивает ячейки, он открывает диалоговое окно. Но когда я щелкаю по ячейке, диалоговое окно не открывается. Я хочу, чтобы при наведении мыши на него открывалось диалоговое окно, а при нажатии на него также открывалось диалоговое окно
Вот мой код
export default function Table() {
const [start, setStart] = useState(null);
const [end, setEnd] = useState(0);
const [selecting, setSelecting] = useState(false);
const [isOpen, setIsOpen] = useState(false);
let toggleModal = () => {
setIsOpen(!isOpen);
};
let beginSelection = i => {
setSelecting(true);
setStart(i);
updateSelection(i);
};
let endSelection = (i = end) => {
setSelecting(false);
updateSelection(i);
toggleModal();
};
let updateSelection = i => {
if(selecting) {
setEnd(i);
}
};
let cells = [];
for(let j = 0; j < 12*4; j++) {
cells.push(
<Cell key={j}
inputColor={
(end <= j && j <= start || (start <= j && j <= end) ? "#adf": "")
}
onMouseDown={()=>beginSelection(j)}
onMouseUp={()=>endSelection(j)}
onMouseMove={()=> updateSelection(j)}
onClick={toggleModal}
>
{j+1}
</Cell>
)
}
return (
<TableCalendar>
{cells}
<Dialog onClose={()=> toggleModal()} show={isOpen} >
Here's some content for the modal
</Dialog>
</TableCalendar>
)
}
Вот мой полный код и демонстрационная версия: https://codesandbox.io/s/github/Kalipts/ReactMouseEvent
Пожалуйста, помогите мне. Спасибо