angular-ui/ui-grid

saveState's restoreColumn unnecessarily calls for the pinning of columns/refresh of grid

Open

#5314 aperta il 12 apr 2016

Vedi su GitHub
 (0 commenti) (0 reazioni) (0 assegnatari)JavaScript (2496 fork)batch import
good first issue

Metriche repository

Star
 (5395 star)
Metriche merge PR
 (Nessuna PR mergiata in 30 g)

Descrizione

restoreColumn's unnecessarily calls for pinning a column/refreshing the grid when a column is currently not pinned and the saved state is also not pinned.

When a column's pinned state is saved, if the column.renderContainer is null, it saves it as an empty string: savedColumn.pinned = column.renderContainer ? column.renderContainer : '';

However, inside the if statement to determine if a pinned column should change, it performs the check: currentCol.renderContainer !== columnState.pinned

Because the column.renderContainer gets stored as an empty string instead of null when being saved, I think the same logic to replace renderContainer with an empty string should also be performed when restoring the columns to prevent an unnecessary pinning/refresh.

Guida contributor