angular-ui/ui-grid

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

クローズ

#5,314 opened on 2016/04/12

 (0 件のコメント) (0 件のリアクション) (0 人の担当者)JavaScript (2,496 件のフォーク)batch import
good first issue

Repository metrics

Stars
 (5,395 個のスター)
PR merge metrics
 (PR metrics pending)

説明

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.

コントリビューターガイド