⊗jsrtPmHkUEGH 6 of 47 menu

React'те useEffect аркылуу глобалдык иштетүүчүлөр

Эми биз түс баскычты чыкылдатуу менен гана эмес, клавиатурадан Enter баскычына басуу менен да өзгөрүшүн каалайбыз деп коёлу. Кадимки React жашоосунда глобалдык window объектисин addEventListener колдонуп уктоо мүмкүн эмес. Бул үчүн бизде эффекттер бар. Келгиле, бул аракетти useEffect жардамы менен кошобуз.

Enter баскычына басуу үчүн иштетүүчү функция жазабыз. Бул учурда түс кызыл түскө өзгөрсүн:

function handleEnter(event) { if (event.keyCode === 13) { setColor('red'); } }

Эми окуяларды уктоону window объектисине useEffect хугуна байланыштырабыз:

useEffect(() => { document.body.style.color = color; window.addEventListener('keydown', handleEnter); }, [color]);

Эгерде бизде кандайдыр бир орнотуу функциясы бар болсо, анда ар дайым useEffect ичинде тазалоо же жазылуудан чыгаруу кодун кайтарышыбыз керек, кийинки маселелерден сактануу үчүн. Бул учурда бизге addEventListener тиркегенден кийин аны өчүрүүнү кайтаруу керек:

useEffect(() => { document.body.style.color = color; window.addEventListener('keydown', handleEnter); return () => { window.removeEventListener('keydown', handleEnter); }; }, [color]);

Компонент берилди. Бардык барактын каалаган жерине чыкылдаганда ушул компоненттин фон түсү өзгөргүлө.

Блок пайда болуучу шилтеме жасагыла. Браузер терезесиндеги каалаган жерге басканда биздин блок жашырылгандай кылып жасагыла.

Кыргызча
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어LietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Биз сайттин иштөөсү, аналитика жана персонализация үчүн cookie файлдарын колдонобуз. Маалыматтарды иштетүү Маалыматты коргоо саясаты боюнча жүргүзүлөт.
баарын кабыл алуу ыңгайлаштыруу четке кагуу