useEffect和setInterval的知识点
useEffect(() => { if (flightAreaSafetyState == 'done') { if (myTimerId.current) { clearInterval(myTimerId.current); myTimerId.current = null; } setsource(1) } else { if (myTimerId.current) return; const timerIdsub = setInterval(() => { FromData(false, false); }, 5000); myTimerId.current = timerIdsub; } }, [flightAreaSafetyState]);
useEffect(() => { FromData(); return () => { if (myTimerId.current) { clearInterval(myTimerId.current); myTimerId.current = null; } }; }, []);
漫思