React 18v davomi
Assalamu alaykum va rohmatullohi va barakatuhi
Yangiliklarni Alloh qodir qilgancha yetkazishga harakat qilamiz
O`zgarishlar saytni tezroq ishlashi uchun hizmat qiladi
1.Updates to Client Rendering API
Avvalgi maqolada faqatgina root ni create qilshni o`rgangan edik
Root ni alohida qilish nma uchun kk
18v gacha root DOM ichida joylashgan edi va uni boshqarish imkonsiz edi.
Root ozi nma ?
root ni tarjima qilsak ildiz degan manoni beradi. react da index.html ni root yaniy ildiz deyishimiz mumkin. Chunki barcha kodlar html ustiga quriladi
biz 18v gacha root ni DOM ichida ishlatdik. natijada js fayllar render bolganida (ozgarib yangilanganida) html fayl ham render bolishi kk edi.
ortiqcha render hech qachon kk emas
shu uchun 18v root ni alohida ozgaruvchiga oldi va uni render qilib componentlar bn boglab qoydi endilikda componentlar yangilanishi root ni yangilanishiga olib kelmaydi
biz ortiqcha render dan qutuldik
import * as ReactDOMClient from 'react-dom/client'; import App from 'App'; // html dan id si root ga teng bolgan div olib kelamiz const container = document.getElementById('root'); // root yaratamiz const root = ReactDOMClient.createRoot(container); // componentni root ga berib yuboramiz root.render(<App />);
batching - yaniy barcha ozgaruvchi statelarni ozgartirib keyin render qilish
bu haqida avvalgi maqolamizda yetarlicha gaplashdik
noyob korinishga ega bolgan va avtomatik ravishda tartiblab beruvchi hook
2) useTransition 3)useDeferrendValue tezkor amallar jarayonida sayt qotishi natijasini oldini olish. Oq ekran ornida ixtiyoriy element chiqarish mumkin
koproq ishlatiladigan varianti useTransition()
sabab useDeferredValue yangi korinish bermaydi. Shunchakiy avvalgi qiymatlarni vaqtinchalik ekranga chiqazib turadi
Qolgan 2 hook kutubxona mualliflariga kutubxonalarni React modeliga chuqur integratsiya qilishlari uchun taqdim etiladi va odatda dastur kodida foydalanilmaydi.