微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我想为我的 Quiz React 应用程序启动倒数计时器小时:分钟:秒,如何仅在选择主题时启动计时器?

如何解决我想为我的 Quiz React 应用程序启动倒数计时器小时:分钟:秒,如何仅在选择主题时启动计时器?

//This function is called when I select a Subject//

const StartTimer =()=>{
useEffect(() => {
      const secondsCounter =
        seconds > 0 &&
        setInterval(() => setSeconds(seconds - 1),1000);
      return () => clearInterval(secondsCounter);
    },[seconds]);
   
    //seconds == 60 (when seconds == 0)
    useEffect(() => {
      return () => setSeconds(2);
    },[seconds === 0 && minutes > 0 && !timeDone]);
    
    //MINUTES
    //Minutes 60 -> 0  (when seconds == 0)
    useEffect(() => {
      return () => setMinutes(minutes - 1);
    },[seconds === 0 && minutes > 0]);
    

    // Minutes == 60 (when minutes == 0)
    useEffect(() => {
      return () => setMinutes(2);
    },[minutes === 0 && hours > 0 && !timeDone]);

    //HOURS
    //hours 24 => 0 (when minutes == 0)
    useEffect(() => {
      return () => setHours(hours - 1);
    },[minutes === 0 && hours > 0 && !timeDone]);

    //DONE
    useEffect(() => {
      return () => {
        setDone(true);
        console.log('STOP');
        history.push('/');
      };
    },[hours === 0 && minutes === 0 && seconds === 0]);
  };
}

 <p>Remaining Time: {hours} :{minutes}: {seconds}</p>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。