The problem is you don't want to generate all the DOM nodes with a long list, ideally you want to have only the visible ones created.
On iOS for example, the default implementation of table, UITableView does this by reusing cells which are no longer in view to show new cells.
On web, there are some libraries that do this (airbnb had one I think, implementations for react, angular etc can be found too) but there is no clear winner.
On iOS for example, the default implementation of table, UITableView does this by reusing cells which are no longer in view to show new cells.
On web, there are some libraries that do this (airbnb had one I think, implementations for react, angular etc can be found too) but there is no clear winner.