Middle
Adj példákat arra, hogy mit lehet tenni a useEffect hookkal, a szerverhez való kérések mellett.
sobes.tech MI
Válasz az MI-től
-
Az oldal fejlécének állapotának kezelése (
document.title). -
Böngésző eseményekhez való feliratkozás és leiratkozás (pl. ablak méretének változtatása, kattintás az elem kívül):
useEffect(() => { const handleResize = () => { console.log('Az ablak mérete megváltozott'); }; window.addEventListener('resize', handleResize); return () => { window.removeEventListener('resize', handleResize); }; }, []); // Üres függőségi tömb: az effekt egyszer fut a felszereléskor és eltávolításkor is. -
Helyi tárolóval való munka (adatok olvasása/írása):
useEffect(() => { const savedValue = localStorage.getItem('myInputValue'); if (savedValue) { setInputValue(savedValue); // Feltételezve, hogy van inputValue állapot és setInputValue függvény } }, []); // Érték betöltése felszereléskor. useEffect(() => { localStorage.setItem('myInputValue', inputValue); // Mentés az inputValue változásakor. }, [inputValue]); // Függőség az inputValue-tól. -
Harmadik fél könyvtárak vagy komponensek inicializálása.
-
Időzítők (
setTimeout,setInterval) beállítása és tisztítása:useEffect(() => { const timerId = setInterval(() => { console.log('Időzítő működik'); }, 1000); return () => { clearInterval(timerId); // Intervallum tisztítása felszereléskor. }; }, []); -
Változások figyelése props vagy állapotban és reagálás ezekre.
-
Egy elem fókuszálása a komponens felszerelésekor:
useEffect(() => { inputRef.current.focus(); // Feltételezve, hogy van ref inputRef }, []);