Table performance issues/Blocking UI #3995
Replies: 15 comments
-
Maybe you should use Pagination (https://buefy.org/documentation/table#pagination-and-sorting) if you want to display that much data. |
Beta Was this translation helpful? Give feedback.
-
Thank you @service-paradis. Is that the only solution? Can't I have 1000 rows on the same page? |
Beta Was this translation helpful? Give feedback.
-
@jcunhafonte I'll investigate about it, thanks for the example |
Beta Was this translation helpful? Give feedback.
-
@jtommy Virtual scrolling would be a good solution for these elements. Let me know if you need help with it. |
Beta Was this translation helpful? Give feedback.
-
Virtual scroll is a feature in my mind, but I wanted to implement it without external dependencies. You can make a PR or discuss about it on Discord. |
Beta Was this translation helpful? Give feedback.
-
Tested this problem "extensively" a year ago and this is a virtual dom problem as far as I can see. You can reproduce the same performance issue (1000+ rows) just by creating a normal html table and try to highlight a selected row. Same problem in all the major vue css component libraries. A Virtual Scroll seems to be the fix in my experience. |
Beta Was this translation helpful? Give feedback.
-
Any news about Virtual scroll? |
Beta Was this translation helpful? Give feedback.
-
@jcunhafonte news ? |
Beta Was this translation helpful? Give feedback.
-
@jtommy Has any progress been made on virtual scrolling? |
Beta Was this translation helpful? Give feedback.
-
Hey, Virtual scroll is really highly needed? Anyone would like to work on this with me? |
Beta Was this translation helpful? Give feedback.
-
@pedrosimao you are welcome |
Beta Was this translation helpful? Give feedback.
-
@jtommy what do you think of using this library as an optional prop of b-table component |
Beta Was this translation helpful? Give feedback.
-
No, as you can read in the docs and readme I wanted to avoid external dependencies |
Beta Was this translation helpful? Give feedback.
-
The library is actually very small, why avoiding it? We could always copy and paste some code from it, but the result is almost the same. Isn't Bulma itself an external dependency? |
Beta Was this translation helpful? Give feedback.
-
Yes, the only dependencies are Vue and Bulma. |
Beta Was this translation helpful? Give feedback.
-
Overview of the problem
Buefy version: [0.9.2]
Vuejs version: [2.6.11]
OS/Browser: Chrome 85
Description
Buefy Table with 1000 rows has bad performance and blocks UI when mutating columns/data object.
Steps to reproduce
Expected behavior
I'd expect the performance to be better when rendering/updating a certain column.
Actual behavior
Example JSFiddled:
https://jsfiddle.net/jcunhafonte/e0L8gzxo/13/
Beta Was this translation helpful? Give feedback.
All reactions