tochoromero / vuejs-smart-table

Simple yet powerful Data Table for Vue with vanilla HTML structure
https://tochoromero.github.io/vuejs-smart-table/
MIT License
220 stars 61 forks source link

FR: Virtual scrolling #68

Open mesqueeb opened 3 years ago

mesqueeb commented 3 years ago

I just wanna say I really love this library. I've looked at about 20+ table libraries for Vue, but this is the only library that "gets" it. It doesn't try to force a UI onto the dev, it just provides the logic for the tricky parts. ❤

I have many ideas for improvements, like implementing virtual scrolling and even virtual scrolling combined with dynamic loading of new rows on scroll.

This allows us to render a table of eg. 1 million rows in under 300ms. Otherwise, if you render all those Dom nodes from the start your site or app pretty much becomes unusable performance wise.

My open questions:

mesqueeb commented 3 years ago

ps my discord is Luca Ban [Mesqueeb]#4774

tochoromero commented 3 years ago

Hello @mesqueeb I really appreciate the feedback.

Here are my thought. I really like how focused the plugin is, it doesn't try to do everything but rather do the basic very well. Instead of adding virtual scrolling to the plugin itself I would be more interested on having documentation on how to incorporate something like https://github.com/Akryum/vue-virtual-scroller.

Virtual scrolling is quite complex and I would much rather have people use specialized libraries for it than trying to get it right on our own.

So if you are interested on putting together a tutorial on how to use Vue virtual scroller alongside Smart Table I would be thrilled to include it in the documentation.

Also, please be aware the next version of the plugin is already in beta, you may want to take a look at it https://vue-smart-table.netlify.app/

Again, I appreciate the feedback and it is always good to hear people find my plugin useful.