react-native - 在 React Native 中停止 setInterval
问题描述
我正在减少使用 setInterval 在本机反应中的时间。我想在 2 秒后停止计时器,但它没有停止。请帮助我清除间隔。
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>
);
}
解决方案
尝试这个:
useEffect(() => {
const interval = setInterval(() => {
setSeconds(seconds => seconds + 1);
}, 1000);
return () => clearInterval(interval);
}, []);
希望能帮助到你。随时怀疑
推荐阅读
- java - Corda LinearState:尝试将消费状态从一个所有者转移到另一个所有者
- android - 在运行时下载 MLKit 人脸检测模型
- typescript - 在 js 文件中为匿名函数导出创建声明
- javascript - 在单个excel中下载两个数据表
- python - 使 TextCtrl 随窗口缩放
- arrays - Angular,无法从 Web 服务 (JSON) 获取值列表
- android - 如何在Android上实现实例分割?
- c# - Microsoft.Azure.Cosmos.Table 和 Microsoft.WindowsAzure.Storage 之间的 ExecuteQuerySegmentedAsync 性能显着下降
- python - 如何为多个插值加速 scipy.map_coordinates?
- amazon-web-services - Amazon Connect 停止通话录音