到达 00:00 时动态计时器不会暂停 - 做出反应

时间:2021-04-17 20:37:06

标签: reactjs dynamic timer react-hooks

我制作了一个自定义计时器,它根据当前时间动态工作。一切正常,但我的问题是当计时器到达 00:00 时,它会返回到 00:60 并从那里一遍又一遍地再次运行……我不知道如何解决这个问题,我已经尝试了很长时间了。 .这是我更新计时器的代码(反应钩子 - 使用效果):

useEffect(() => {
       if (timerSeconds == 1 && timerMinutes == 0) {
           setTimerSeconds('0');
           setTimerMinutes('0');
       }
       else if(timerSeconds != 1 && timerSeconds != 0 && timerMinutes != 0) {
           const Interval = setInterval(() => {
               const timeNowSeconds = 60-new Date().toLocaleTimeString([], {second: '2-digit'});
               setTimerSeconds(timeNowSeconds);
           }, 980)
           if (timerMinutes == 0 && timerSeconds == 1) {
               clearInterval(Interval);
           }
           console.log('hey')
       }
       else if (timerSeconds == '1' && timerMinutes != '0' && timerSeconds != '0') {
           setTimeout(() => { 
               setTimerMinutes(timerMinutes-1); 
           }, 1000);
           console.log('hello')
       }
   });

0 个答案:

没有答案
相关问题