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

Nik*_*tis 10 ag-grid angular ag-grid-angular

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

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

任何人都可以帮忙吗?

Ric*_*ich 14

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

请参阅文档以获取更多信息。

Feature                     Client-side   Infinite    Server-side     Viewport
...
Row Selection               ?             ?            ?              ?
Header Checkbox Selection   ?             ?            ?              ?
Run Code Online (Sandbox Code Playgroud)

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

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

我使用了一个 Angular 服务来保持一个中心位置来跟踪所有这些信息,并且只依靠标题组件来显示复选框。

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

  • 您能否提供一个示例来说明您是如何手动创建的?谢谢! (2认同)