使用服务器端数据源时,标题复选框的选择不起作用

时间:2019-09-11 14:05:38

标签: angular ag-grid ag-grid-angular

正如标题所示,我将ag-grid与Angular一起使用,并且我使用了一个自定义类,该类实现了IServerSideDatasource来从rowModelType设置为“ serverSide”的API中获取数据。

问题在于,当我将headerCheckboxSelection和checkboxSelection设置为true时,复选框选择出现在每一行的旁边,但是它没有出现在标题中,而当我使用客户端行模型类型时,它的工作效果就很好。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:3)

标头复选框的选择不是ag-grid的服务器端行模型的受支持功能。您应该会收到一条控制台日志消息,通知您。

有关更多信息,请参见documentation

Feature                     Client-side   Infinite    Server-side     Viewport
...
Row Selection               ✔             ✔            ✔              ✔
Header Checkbox Selection   ✔             ✕            ✕              ✕

如果要实现此功能,则需要使用自定义标头组件手动处理此功能。我以前做过(尽管使用无限行模型,而不是服务器端),但是您需要跟踪一些事情...

  • 当前选中的行的总列表。
  • 是否已选中“全部检查”?
  • 是否显示不确定的复选框(部分但不是全部选中的行)。
  • 从服务器获取行时,您需要查看是否已选中全部按钮并相应地更新该行的选择。

我使用Angular Service来保持一个中央位置来跟踪所有这些信息,只是依靠标题组件来显示复选框。

如您所见,这是一项艰巨的任务,没有简单的解决方案。