React useRef Hook
useRef Hook
useRef
Hook qiymatlarni renderlar orasida saqlash imkonini beradi.
Bu yangilanganida qayta render bo'lmaydigan o'zgarmas qiymatlarni saqlash uchun ishlatilishi mumkin.
Shuningdek, u DOM elementiga to'g'ridan-to'g'ri kirish uchun ishlatilishi mumkin.
Qayta Renderlarni Keltirmaydi
Agar biz useState
Hook yordamida ilovamiz necha marta render bo'lishini hisoblashga harakat qilsak, bu Hook o'zi qayta renderni chaqirishi tufayli cheksiz siklga tushishimiz mumkin.
Buni oldini olish uchun, useRef
Hook-dan foydalanishimiz mumkin.
Misol
Ilova renderlarini hisoblash uchun useRef
dan foydalanish:
useRef()
faqat bitta narsani qaytaradi. U current
deb nomlangan obyektni qaytaradi.
useRef
ni inicializatsiya qilayotganda boshlang'ich qiymatni o'rnatamiz: useRef(0)
.
Bu, shunday qilib bajarish bilan teng: const count = {current: 0}
. Biz count
ni count.current
orqali kirishimiz mumkin.
Bu kodni kompyuteringizda ishlating va input maydoniga yozishni sinab ko'ring, ilovaning renderlar soni oshishini ko'rasiz.
DOM Elementlariga Kirish
Umuman olganda, React barcha DOM manipulyatsiyasini boshqarishini xohlaymiz.
Ammo ba'zi hollarda useRef
muammosiz ishlatilishi mumkin.
Reactda, biz DOM-da to'g'ridan-to'g'ri kirish uchun elementga ref
atributini qo'shishimiz mumkin.
Misol
Input maydonini fokuslash uchun useRef
dan foydalanish:
Holat O'zgarishlarini Kuzatish
useRef
Hook, shuningdek, oldingi holat qiymatlarini kuzatish uchun ishlatilishi mumkin.
Bu, useRef
qiymatlarini renderlar orasida saqlashimiz mumkinligi sababli.
Misol
Oldingi holat qiymatlarini kuzatish uchun useRef
dan foydalanish:
Bu vaqt biz useState
, useEffect
, va useRef
kombinatsiyasidan oldingi holatni kuzatish uchun foydalanamiz.
useEffect
ichida biz inputValue
yangilangan har safar useRef
-ning joriy qiymatini yangilaymiz.