Hey guys, so I have implemented drag-and-drop functionality in our calendar view. For context, there are about 161 columns generated and there are like 10 cards in this specific project. But when I try to drag the cards from one place to another the system slows down significantly to the point it’s unusable. see the below video
In this case, what do you guys suggest we should do? Also, we are guessing it’s because of a lot of drop areas created. if that’s the case can we specify which columns (visible columns on the screen) can be used for the drop area?
I believe this is related to how the App is implemented with regards to performance, and here are some general tips that may help.
In this case, where you have e.g. 160 days horizontally and 10 rows, gives 1600 cells. If all those cells have e.g. 10 visibility conditions or conditional styles each (all being evalated) this gives 16000 calculations for drawing this calendar.
So, if the action you perform updates the Activities data source once with 1 update object, all conditional styles or visibility conditions will be re-evaluated (=sluggishness) if those conditions are set up having the whole Activities datasource as a function parameter (in other words, the conditions are dependent on that update).
The performance may be improved by reducing the number of columns (or dynamically load new columns on scroll using on viewport enter event handler)
To verify that it is the drawing and evaluation of the cells that is the problem, you may create a copy of the view and remove all visibility conditions / conditional styles etc, and test it.
Note that performance tuning might require some effort.