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
We've stumbled upon a performance issue. We have fairly large grid with ~1000 rows and ~20 columns with cell-nav directive applied.
When updating the data source refreshCellFocus calls are queued (source) for each cell via $timeout service which causes a lot of digest cycles to run for us. In our case ~800 cycles are triggered and each digest cycle takes about 100 ms (due to comparing large objects). The browser is hogged for about 1:30 minutes, preventing the user to work.
Using $scope.$applyAsync() instead of $timeout eliminates this issue. I guess this is an edge case as we're having slow digest cycles. But using applyAsync / evalAsync is probably a better practice than $timeout?
The text was updated successfully, but these errors were encountered:
We've stumbled upon a performance issue. We have fairly large grid with ~1000 rows and ~20 columns with
cell-nav
directive applied.When updating the data source
refreshCellFocus
calls are queued (source) for each cell via$timeout
service which causes a lot of digest cycles to run for us. In our case ~800 cycles are triggered and each digest cycle takes about 100 ms (due to comparing large objects). The browser is hogged for about 1:30 minutes, preventing the user to work.Using
$scope.$applyAsync()
instead of$timeout
eliminates this issue. I guess this is an edge case as we're having slow digest cycles. But using applyAsync / evalAsync is probably a better practice than $timeout?The text was updated successfully, but these errors were encountered: