问题描述:
初始化useEffct中添加定时器,页面上显示10-0倒计时:
import React,{useEffect, useState} from 'react'
export default function DepartList() {
let [num,setNum] =useState<any>(10)
useEffect(() => {
let timer = setInterval(() => {
setNum(()=>{
if (num > 0) {
setNum ( num-- )
}
return num
})
}, 1000)
return () => {
// 每次执行新的 useEffect 时,之前的 useEffect 会被清理
// 这个函数会被调用,从而清除之前的 setInterval 计时器
clearInterval(timer);
};
}, [num])
return (
<div>
{num}
</div>
)
}