【问题标题】:React Native clearInterval is not stoping setIntervalReact Native clearInterval 没有停止 setInterval
【发布时间】:2022-01-07 06:28:39
【问题描述】:

由于某种原因,我无法让我的计数器停止。该函数在 onPressOut 上接收“停止”,但是 clearInterval() 不起作用,计数器继续运行

  const startCounter = press => {
    let myInterval = setInterval(() => {
      setCounter(count => count + 1);

      if (press === 'stop') {
        clearInterval(myInterval);
      }
    }, 1000);
  };

  return (
    <Pressable
      onPress={toggleMute}
      onLongPress={startCounter}
      onPressOut={() => startCounter('stop')} />
  )

【问题讨论】:

    标签: javascript reactjs react-native jsx


    【解决方案1】:

    试试这个代码吧!

    let myInterval = '';
      const startCounter = press => {
        myInterval = setInterval(() => {
          setCounter(count => count + 1);
    
          if (press === 'stop') {
            clearInterval(myInterval);
          }
        }, 1000);
      };
      const stopCounter = () => {
        clearInterval(myInterval);
      }
      return (
        <Pressable
          onPress={toggleMute}
          onLongPress={startCounter}
          onPressOut={() => stopCounter()} />
      )
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-01
      • 2016-03-14
      相关资源
      最近更新 更多