如何在 ng-zorro table 中过滤数组 table?

How to filter array table in ng-zorro table?

我是 Angular 的新手。

我有一个这样的演示数组:

for (let index = 1; index <= 100; index++) {
  this.listOfData.push([
    `Name ${index}`,
    `Math.floor(Math.random() * 100)`,
    'Employee',
  ]);
}

然后我尝试创建一个具有搜索功能的过滤器 table:

onSearch = (value) => {
  const output = this.listOfData.filter((arr) =>
    arr.some((item) => {
      item.toLowerCase().includes(value);
    })
  );
  console.log('output: ', output);
  this.listOfDisplayData = output;
};

这是我的demo

所以基本上您的数据项是 [[string,string,string],...] 当您开始使用 filter 进行过滤时,您必须 return true 才能包含它并且 false 才能过滤出来了。

这应该可以解决问题

  onSearch = (value) => {
    const output = this.listOfData.filter((arr) =>
      arr.some((item) => {
        if (item.toLowerCase().includes(value)) {
          return true;
        } else {
          return false;
        }
      })
    );
    console.log('output: ', output);
    this.listOfDisplayData = output;
  }