代码之家  ›  专栏  ›  技术社区  ›  CodeRic

导航时的clearInterval()。推式反应器

  •  0
  • CodeRic  · 技术社区  · 2 年前

    我写了一些代码来设置 dealScreen :

    let timer;
      useEffect(() => {
            timer = setInterval(() => { 
              console.log('test');
            }, 1000);
        return () => clearInterval(timer);
      }, []);
    

    使用导航到另一页时 navigation.push 间隔未清除。 如何强制清除间隔 navigation 。因为它是一个堆栈,所以我认为该页面仍在新页面的后面。

    使用时 navigation.replace 这是可行的,但我没有正确的历史记录。

    1 回复  |  直到 2 年前
        1
  •  0
  •   Hamas Hassan    2 年前

    尝试呼叫 clearInterval(计时器) 尝试导航时的功能。

    示例:

      let timer;
      useEffect(() => {
        timer = setInterval(() => {
          console.log('test');
        }, 1000);
      }, []);
    
      const navigateToNextScreen = () => {
        clearInterval(timer);
        navigation.push('Next Sreen');
      };
    

    我希望这对你有帮助。谢谢