@vielzeug/scroll
v26.10.16
Published
Virtual list engine for large datasets
Readme
@vielzeug/scroll
Virtual list engine for large datasets
Installation
pnpm add @vielzeug/scroll
npm install @vielzeug/scroll
yarn add @vielzeug/scrollQuick Start
import { createVirtualizer } from '@vielzeug/scroll';
const scrollEl = document.querySelector<HTMLElement>('.scroll-container')!;
const listEl = document.querySelector<HTMLElement>('.list')!;
const virt = createVirtualizer(scrollEl, {
count: 10_000,
estimateSize: 36,
onChange: ({ items, totalSize }) => {
listEl.style.height = `${totalSize}px`;
listEl.replaceChildren();
for (const item of items) {
const row = document.createElement('div');
row.style.cssText = `position:absolute;top:${item.start}px;left:0;right:0;height:${item.size}px;`;
row.textContent = `Row ${item.index}`;
listEl.appendChild(row);
}
},
});
// Later:
virt.dispose();Documentation
License
MIT © Helmuth Saatkamp: part of the Vielzeug monorepo.
