The VirtualScroller component renders only the visible portion of a large list by recycling DOM nodes as the user scrolls, making it possible to display tens of thousands of items without performance degradation. Its token surface in the Nettalco preset is intentionally minimal — only the loading overlay (mask background and spinner icon size) is configured here. Item templates and their visual styling are entirely the responsibility of the consuming application.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Nettalco/nettalco-theme/llms.txt
Use this file to discover all available pages before exploring further.
Angular Usage Example
itemSize must match the exact rendered pixel height (or width for horizontal mode) of each item. Mismatches cause layout jumps during scroll.
Design Tokens
loader
Tokens for the built-in loading overlay displayed while the component fetches lazily loaded data.
loader.mask
| Token | Value |
|---|---|
background | {content.background} |
color | {text.muted.color} |
loader.icon
| Token | Value |
|---|---|
size | 2rem |
Theme Notes
The VirtualScroller preset is deliberately thin. All meaningful visual tokens — item background, hover states, padding, borders — are specified by the item template rather than by the component’s own token set. This is consistent with PrimeNG’s design intent: VirtualScroller is a performance primitive, not a visual component.Lazy Loading Integration
For server-side paginated data, combine VirtualScroller with[lazy]="true" and handle the (onLazyLoad) event:
Use Inside DataTable
PrimeNG DataTable uses VirtualScroller internally when[virtualScroll]="true" is set. The loader tokens apply to the row-level placeholder while rows are being fetched, so they inherit the DataTable surface colour ({content.background}) seamlessly.