如何在更改数据源后保留 UI 网格选择



据我了解,ui-grid 使用 primaryKey grid 选项在更新中保留您的选择,但这个简单的 plunker 表明这不是真的:

http://plnkr.co/edit/WYXeQShHWKDYDs4MIZnP?p=preview

重现步骤:

  1. 单击一行以将其选中
  2. 单击
  3. "单击我以重置数据源"。这将重置数据源(重置为包含与以前完全相同的数据的数据源)。
  4. 您的选择现已消失。

初始数据源为:

data: [
  { id: "item1" },
  { id: "item2" }
],

primaryKey: 'id',

当您单击按钮时,这是处理程序:

  $scope.resetDataSource = function()
  {
    $scope.gridOptions.data = [  { id: "item1" }, { id: "item2" } ];
    $scope.$apply();
  };

删除$scope.gridOptions.data =行将很好地保留所选内容。

新数据源与

旧数据源完全相同(内容)。

分配新数据源后,如何保留选择?

尝试使用选项 restoreSelection

http://ui-grid.info/docs/#/api/ui.grid.saveState.service:uiGridSaveStateService

最新更新