Senior
Imamo tabelu sa 10.000 redova koja počinje da usporava prilikom prikaza. Zašto se to dešava i kako to popraviti?
sobes.tech АИ
Одговор од АИ
Prikazivanje tabele sa 10.000 redova izaziva kašnjenja zbog velikog broja DOM elemenata, što preopterećuje pregledač i usporava renderovanje.
Kako to popraviti:
- Virtuelizacija liste (virtuelno skrolovanje) — renderovati samo vidljivi deo tabele u DOM-u, učitavajući redove tokom skrolovanja.
- Paginacija — podeliti podatke na stranice, prikazujući ograničen broj redova odjednom.
- Optimizacija renderovanja — koristiti memoizaciju, izbegavati nepotrebne ponovne renderove.
Primer korišćenja virtuelnog skrolovanja sa React i react-window:
import { FixedSizeList as List } from 'react-window';
const Row = ({ index, style }) => (
<div style={style}>Red {index}</div>
);
<List
height={500}
itemCount={10000}
itemSize={35}
width={300}
>
{Row}
</List>