Baru-baru ini, saya telah menangani kesesakan prestasi dalam apl React saya. Pesalahnya? Paparan semula yang kerap bagi komponen kompleks yang memaparkan senarai item yang besar. Malah perubahan data kecil telah mencetuskan rangkaian kemas kini yang tidak perlu, memperlahankan UI.
Penyelesaian? Hashing!
Saya melaksanakan fungsi pencincangan untuk menjana kunci unik bagi setiap item dalam senarai. Kunci ini adalah berdasarkan data item, jadi jika data tidak berubah, cincangan tetap sama.
Dengan menghantar cincang ini sebagai prop utama kepada setiap item senarai, React boleh mengenal pasti item yang sebenarnya telah berubah dan hanya memaparkan semula komponen khusus tersebut dengan cekap.
Hasilnya? Peningkatan prestasi yang ketara dan pengalaman pengguna yang lebih lancar!
Berikut ialah contoh ringkas:
const items = [ { id: 1, name: 'Item A', data: '...' }, { id: 2, name: 'Item B', data: '...' }, // ... more items ]; const generateKey = (item) => { // Use a hashing function (e.g., MD5, SHA-1) // to generate a unique key based on item.data return hash(item.data); }; const renderItems = () => { return items.map((item) => ( <ListItem key={generateKey(item)} item={item} /> )); };
Pengambilan utama:
Adakah anda menggunakan pencincangan untuk pengoptimuman prestasi dalam projek anda? Kongsi pengalaman anda dalam komen!
Jika anda menyukai apa yang anda baca, pertimbangkan untuk berhubung dengan saya di LinkedIn
Atas ialah kandungan terperinci Hashing to the Rescue: Kisah Persembahan React. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!