Abp.io Angular UI - 具有自定义 属性 过滤器的 ListService

Abp.io Angular UI - ListService with custom property filter

Abp.io平台在abp平台的AngularUI中集成了ListService that simplifies the use of ngx-datatables

我的问题是:

如何使用一些自定义的 ListService 进行过滤 属性?

示例: Entity_A 有 Entity_B 的列表。 对于给定的 Entity_A.

,我想显示 table of Entity_B

所以我需要以某种方式在此代码中添加 Entity_A 的 id 以触发基于此 Entity_A 的过滤。

const dataStreamCreator = (query) => this.dataService.getList(query);

this.list.hookToQuery(dataStreamCreator).subscribe((response) => {
  this.data= response;
});

我知道当我得到响应(数据)时,我可以在 UI 端进行自定义过滤,但在那种情况下,分页可能会成为一个问题。

问题是如何进行服务器端过滤。

非常感谢任何帮助!

当您 hookToQueryListService 时,它会为您提供当前查询(过滤器、页面、排序方向、排序列等)。您可以根据需要向查询添加任何内容.查看以下示例。

export class MyComponent {

   // Assign something to this variable somehow
   someFilterValue;
   data;
   
   constructor(public list: ListService) {
      const dataStreamCreator = (query) => this.dataService.getList({
         ...query,
         ...this.someFilterValue
      });
      this.list.hookToQuery(dataStreamCreator).subscribe((response) => {
         this.data= response;
      });
   }
}