【发布时间】:2021-03-01 08:25:54
【问题描述】:
这是一个sn-p的代码:
var interval3 = null;
React.useEffect(() => {
if(running) {
if(interval3) clearInterval(interval3);
interval3 = setInterval(() => {
console.log('running')
}, 1000);}
else {
clearInterval(interval3)
}
}, [running]);
我检查了其他帖子中建议的解决方案,但没有一个有效。
【问题讨论】:
-
如果你在函数式组件的主体中声明了一个变量,那么每次组件重新渲染时它都会被重新制作。如果您希望变量在渲染之间保持不变,则需要将其存储在 ref
标签: javascript reactjs setinterval use-effect