From a03127a0a29c6896643d6043afb5fcd0d3407f7b Mon Sep 17 00:00:00 2001 From: ilyayudovin Date: Thu, 3 Sep 2020 12:42:36 +0300 Subject: feat: add separation function of single and double clicks --- src/components/PollCard/PollCard.tsx | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) (limited to 'src/components/PollCard/PollCard.tsx') diff --git a/src/components/PollCard/PollCard.tsx b/src/components/PollCard/PollCard.tsx index 80a1386..87d9fae 100644 --- a/src/components/PollCard/PollCard.tsx +++ b/src/components/PollCard/PollCard.tsx @@ -51,6 +51,25 @@ const PollCard: React.FC = React.memo(({ poll, setPoll }) => { const { enqueueSnackbar } = useSnackbar(); const { isAuthenticated } = useAuth(); const date: string = new Date(poll.createdAt).toLocaleString('default', DATE_FORMAT); + let timer: any; + let delay = 200; + let prevent = false; + + const handleClick = (which: Which) => () => { + if(!prevent) { + prevent = true; + timer = setTimeout(() => { + console.log('single click', prevent); + prevent = false; + }, delay) + } + else { + clearTimeout(timer); + prevent = false; + console.log('double click', prevent); + handleVote(which); + } + }; const handleVote = (which: Which) => { if (!isAuthenticated) { @@ -77,9 +96,6 @@ const PollCard: React.FC = React.memo(({ poll, setPoll }) => { } }; - const handleLeft = () => handleVote('left'); - const handleRight = () => handleVote('right'); - let leftPercentage; let rightPercentage; @@ -97,11 +113,11 @@ const PollCard: React.FC = React.memo(({ poll, setPoll }) => {
- + - + -- cgit v1.2.3