【发布时间】:2021-11-13 13:19:07
【问题描述】:
我需要让 React 每隔几秒运行一个函数,但不应该在重新渲染 DOM 时重新开始倒计时。 所以基本上我想在应用程序启动时运行这个函数,并且每 30 秒重新运行一次相同的函数,但是如果当 DOM 重新渲染时我不想让倒计时到 30 秒从 0 重新开始。 我正在检查这个答案How to call a function every minute in a React component?,但每次 DOM 呈现倒计时都会重置为 0。 有没有办法只使用 React 来实现这一点?
【问题讨论】:
-
你想每 30 秒运行一次函数,为什么不使用
setInterval,DOM 或 React 与此有何关系?请添加更多上下文以及您实际尝试过的内容。 -
如果你有函数组件,你可以使用 useEffect 之类的钩子
-
@DennisVash 问题是当我启动应用程序时 setInterval 开始计数为 30 但如果我刷新页面然后 setInterval 将重新启动 30 秒倒计时而不运行该功能
-
保留页面刷新之间的间隔与保留 React 渲染之间的间隔非常不同。您应该创建一个最小的代码示例,展示您尝试创建的特定行为以及它是如何失败的。
标签: javascript reactjs