【问题标题】:Stop setInterval in React Native在 React Native 中停止 setInterval
【发布时间】:2020-07-13 10:52:43
【问题描述】:

我在 react native 中使用 setInterval 来减少时间。我想在 2 秒后停止计时器,但它没有停止。 请帮我解决clearInterval。

import React, { useState, useEffect } from "react";
import { View, Text } from "react-native";

export default function App() {
  const [otpTimer, setOtpTimer] = useState(120);

  useEffect(() => {
    setInterval(() => {
      setOtpTimer((prevActiveStep) => prevActiveStep - 1);
    }, 1000);
  }, []);

  return (
    <View>
      <Text>{otpTimer}</Text>
    </View>
  );
}

 

【问题讨论】:

    标签: react-native


    【解决方案1】:

    试试这个:

     useEffect(() => {
        const interval = setInterval(() => {
          setSeconds(seconds => seconds + 1);
        }, 1000);
        return () => clearInterval(interval);
      }, []);
    

    希望对您有所帮助。如有疑问,请随意

    【讨论】:

    • 我正在减少数量而不是增加,并且在 2 分钟后就会清楚它就像 OTP。
    • 添加一个 setTimeout 并在 2 分钟后调用我的 clearInterval(interval);
    猜你喜欢
    • 1970-01-01
    • 2016-11-01
    • 2020-10-19
    • 2022-06-12
    • 1970-01-01
    • 2023-04-02
    • 1970-01-01
    • 2014-09-05
    • 2010-09-11
    相关资源
    最近更新 更多