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
Does someone know a repo do this virtual scroll instead of ngFor ? Today we have a very large set of data, it's primordial to begin/HAVE this feature instead of something like "tooltip" or so ! @jelbourn Displaying big data is important today please begin with something hard instead of "tooltip"
Please recognize that you are asking about a feature that most projects don't need/use and is a technical challenge to put into a library in a fully formed, universal way... You could probably write your own version, but it might not be what I would need...
Tooltip is a super easy use case for portals and overlay's which are core to everything from menu's to dialogs so is rather simple to release and common enough that most use cases fit.
The link you gave has a link to his source code and it's only 400ish lines. I bet you could make a ng2 version and contributing it back to the community for free would be awesome!
Reacted by Charl, Víctor Adrián, Demetrio Filocamo, Carlos Eduardo Villalta and Tomasz
@DennisSmolek"Infinite scrollers pop up all over the internet. Google Music’s artist list is one, Facebook’s timeline is one and Twitter’s live feed is one as well"
IMHO infinite scroll is technik people need to have to discharge their DOM! Still more today we have big data.
Update
Impossible to get iron list working (very comlpicate) if you have an github repo doing virtual Dom, you're welcome
Reacted by Charl, Natalie Perret, Textras, Bert Lievrouw, Heinrich Goebl and JZ Song
I've ported the old one and wonder if I there's some form of spec available so I can align my implementation with it. The mdVirtualRepeat is almost (as in line-to-line) the same, but structural repeater had to be made by scratch based on ngFor and mdVirtualRepeat.
Reacted by Elvis Begovic, natcohen, Things, Charl, Jason Yeomans, Endy Jasmi, Dan Ryan, John Walker and bryanrideshark
Reacted by Elvis Begovic, natcohen, Things, Charl, Jason Yeomans, bryanrideshark, Carlos Eduardo Villalta and John Walker
@Klaster1 , any chance you could fork material2 and add your work to the library? If there was at least an initial PR we could get some momentum going behind this.
@jelbourn is that the sort of thing that can be implemented in a version bump down the road? Variable height is a tricky issue to solve with virtual repeaters, and I'm not sure insisting upon its inclusion is a realistic goal.
If we could at least get feature parity with Angular Material 1.0, it would be a massive help; Our company is pretty dependent on md-virtual-repeat, and its lack of support in Angular Material 2.0 is a bit of a blocker for us to upgrade to Angular ^2.
To be sure, flexible height would be a great feature, I'm just not sure it's as much of a requirement as having virtual repeat in the first place.
Reacted by Lukas Heddendorp, Dan Ryan, Daniel Meyer, Emmanuel Briot, deepak342, Yannic, viewstack and Eddygn
@jelbourn I fully agree with @bryanrideshark for virtual scroll to be exact in height is not top priority. Exact position affects scrollbar position on the right, but normally it is only a visual effect.
@bsthilaire thanks! i referenced this issue in the issue you mentionned. Since like that we can see the status here :).
If there is other issues opened not referenced here and you know about => please tag this issue the other side to be able to have a clear view on how mature this feature is. And also maybe help :)
onScroll(e) {
const viewHeight = e.target.offsetHeight // viewport: ~500px
const scrollHeight = e.target.scrollHeight // length of all table
const scrollLocation = e.target.scrollTop; // how far user scrolled
// If the user has scrolled within 200px of the bottom, add more data
const buffer = 200;
const limit = scrollHeight - viewHeight - buffer;
if (scrollLocation > limit) {
this.loadList();
}
}
This seems to work, but has performance issues, so in order to optimize the performance I tried adding debounceTime.
I think this issue is growing too much. Devs are reporting here all bugs/questions. @mmalerba is it fine? or can we use a better strategy?
Like closing this issue and let a message at the end to encourage devs open specific issues/questions... with in the tittle virtual-scroll: since i saw this pattern in all issues from the board you posted.
And maybe also having a specific ReadMe link under 'virtual-scroll' feature folder that document the virtual-scroll and giving a status about the feature.
I'm planning to leave this issue open until the virtual scroll is available in cdk (rather than cdk-experimental). If people have specific bugs they've encountered they should open a new issue. Discussion and troubleshooting should happen on Gitter, Stack Overflow, etc
Reacted by Adam Wamai Egesa and ygopensource
Reacted by nasreddine skandrani, Steve Todorov and Ravin Singh D
Activity
natcohen commentedon Aug 30, 2016
Would be good to implement dynamic height (angular/material#4314)
elvisbegovic commentedon Sep 24, 2016
Does someone know a repo do this virtual scroll instead of ngFor ? Today we have a very large set of data, it's primordial to begin/HAVE this feature instead of something like "tooltip" or so ! @jelbourn Displaying big data is important today please begin with something hard instead of "tooltip"
ps: https://developers.google.com/web/updates/2016/07/infinite-scroller
DennisSmolek commentedon Oct 5, 2016
@istiti Polymer has
<iron-list>Here and Demos HerePlease recognize that you are asking about a feature that most projects don't need/use and is a technical challenge to put into a library in a fully formed, universal way... You could probably write your own version, but it might not be what I would need...
Tooltip is a super easy use case for portals and overlay's which are core to everything from menu's to dialogs so is rather simple to release and common enough that most use cases fit.
The link you gave has a link to his source code and it's only 400ish lines. I bet you could make a ng2 version and contributing it back to the community for free would be awesome!
elvisbegovic commentedon Oct 6, 2016
@DennisSmolek "Infinite scrollers pop up all over the internet. Google Music’s artist list is one, Facebook’s timeline is one and Twitter’s live feed is one as well"
IMHO infinite scroll is technik people need to have to discharge their DOM! Still more today we have big data.
Update
Impossible to get iron list working (very comlpicate) if you have an github repo doing virtual Dom, you're welcome
laserus commentedon Nov 9, 2016
@istiti Have you tried this https://github.com/vaadin/angular2-polymer
https://vaadin.com/blog/-/blogs/using-polymer-components-in-angular-2
elvisbegovic commentedon Nov 9, 2016
yes but this add more complexities to my app ... really a bad choice but I find angular2-data-table which do work very awesome thanks
elvisbegovic commentedon Nov 26, 2016
ETA?
Klaster1 commentedon Dec 23, 2016
I've ported the old one and wonder if I there's some form of spec available so I can align my implementation with it. The mdVirtualRepeat is almost (as in line-to-line) the same, but structural repeater had to be made by scratch based on ngFor and mdVirtualRepeat.
bryanrideshark commentedon Feb 14, 2017
@Klaster1 , any chance you could fork material2 and add your work to the library? If there was at least an initial PR we could get some momentum going behind this.
bryanrideshark commentedon Feb 14, 2017
ngx-datatable has an implementation of virtual scroll.
I wonder if that couldn't be easily brought in?
jelbourn commentedon Mar 8, 2017
@ThibaultSavary we want to explore solutions for non fix-sized items in material2.
bryanrideshark commentedon Mar 8, 2017
@jelbourn is that the sort of thing that can be implemented in a version bump down the road? Variable height is a tricky issue to solve with virtual repeaters, and I'm not sure insisting upon its inclusion is a realistic goal.
If we could at least get feature parity with Angular Material 1.0, it would be a massive help; Our company is pretty dependent on
md-virtual-repeat, and its lack of support in Angular Material 2.0 is a bit of a blocker for us to upgrade to Angular ^2.To be sure, flexible height would be a great feature, I'm just not sure it's as much of a requirement as having virtual repeat in the first place.
laserus commentedon Mar 8, 2017
@jelbourn I fully agree with @bryanrideshark for virtual scroll to be exact in height is not top priority. Exact position affects scrollbar position on the right, but normally it is only a visual effect.
70 remaining items
bsthilaire commentedon Jul 10, 2018
@nasreddineskandrani The gap at the end is alread tracked by #11195
nasreddineskandrani commentedon Jul 10, 2018
@bsthilaire thanks! i referenced this issue in the issue you mentionned. Since like that we can see the status here :).
If there is other issues opened not referenced here and you know about => please tag this issue the other side to be able to have a clear view on how mature this feature is. And also maybe help :)
mmalerba commentedon Jul 10, 2018
I've been tracking all of the virtual scroll issues in this project: https://github.com/angular/material2/projects/20
Sorry for the lack of responsiveness, I just got back from a long vacation, will resume working on this now that I'm back
naveedahmed1 commentedon Jul 11, 2018
Anyone tried infinite scroll with
cdk-virtual-scroll? I wanted to know what would be the best approach, I tried this:And
This seems to work, but has performance issues, so in order to optimize the performance I tried adding debounceTime.
But this doesn't seems to work and throw below error
I also tried moving the code to
ngAfterViewInit()but still same error.nasreddineskandrani commentedon Jul 14, 2018
I think this issue is growing too much. Devs are reporting here all bugs/questions.
@mmalerba is it fine? or can we use a better strategy?
Like closing this issue and let a message at the end to encourage devs open specific issues/questions... with in the tittle
virtual-scroll:since i saw this pattern in all issues from the board you posted.And maybe also having a specific ReadMe link under 'virtual-scroll' feature folder that document the virtual-scroll and giving a status about the feature.
mmalerba commentedon Jul 16, 2018
I'm planning to leave this issue open until the virtual scroll is available in cdk (rather than cdk-experimental). If people have specific bugs they've encountered they should open a new issue. Discussion and troubleshooting should happen on Gitter, Stack Overflow, etc
gshireesh commentedon Jul 26, 2018
I wrote a library for it in angualr 6. it uses cdk virtual component and supports end triggers.
check out: https://github.com/aprola/ngx-infinite-virtual-scroll
demo: https://aprola.github.io/ngx-infinite-virtual-scroll/
And Readme.md for instructions. If anyone likes it, ill would love to make documentation too.
manju-reddys commentedon Jul 26, 2018
@gshireesh Your demo is not working
gshireesh commentedon Jul 27, 2018
@manju-reddys thanks for pointing it out. I busted npm cache. now it works fine.
lautarobock commentedon Aug 17, 2018
Do you think that this features could be used for virtualization of horizontal scrolling?
jburson commentedon Oct 30, 2018
@mmalerba Is there ongoing work being done on this AutosizeVirtualScrollStrategy? It looks like the code has been stagnant for 3 months.
JustasKuizinas commentedon May 1, 2019
Any news on autosize?
angular-automatic-lock-bot commentedon Sep 10, 2019
This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.
Read more about our automatic conversation locking policy.
This action has been performed automatically by a bot.