You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Mar 13, 2018. It is now read-only.
Two related problems: the bigger one is core-list will re-initialize all of its elements if you add data to the list, even if that new data is far offscreen and isn't physically present.
e.g. if you have a core-list with data bound to a 100 element array, and then call .push({}) on that array, the core-list viewport will be re-initialized which is very expensive (~300ms in the example I'm looking at on a Nexus 5). For true infinite scroll we want to be able to load data from the network (or elsewhere) and add it to the list before its needed.
The other problem is that this re-initialization is itself so expensive, largely because every one of the template instances is individually laid-out -- so there is a requestAnimationFrame called for each, a layout call, and some other overhead that's done for every single element; a form of layout thrashing. It would be much more efficient to batch this somehow...
The text was updated successfully, but these errors were encountered:
Two related problems: the bigger one is core-list will re-initialize all of its elements if you add data to the list, even if that new data is far offscreen and isn't physically present.
e.g. if you have a core-list with data bound to a 100 element array, and then call .push({}) on that array, the core-list viewport will be re-initialized which is very expensive (~300ms in the example I'm looking at on a Nexus 5). For true infinite scroll we want to be able to load data from the network (or elsewhere) and add it to the list before its needed.
The other problem is that this re-initialization is itself so expensive, largely because every one of the template instances is individually laid-out -- so there is a requestAnimationFrame called for each, a layout call, and some other overhead that's done for every single element; a form of layout thrashing. It would be much more efficient to batch this somehow...
The text was updated successfully, but these errors were encountered: