简体   繁体   English

如何过滤 ng-zorro 表中的数组表?

[英]How to filter array table in ng-zorro table?

I'm new to Angular.我是 Angular 的新用户。

I have a demo array like this:我有一个这样的演示数组:

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

And I try to create a filter table with search function:我尝试使用搜索 function 创建一个过滤表:

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

This is my demo这是我的演示

So basically your data item is [[string,string,string],...] when you start filtering with filter you must return true for it to include and false to filter it out.因此,基本上您的数据项是[[string,string,string],...]当您开始使用filter进行过滤时,您必须返回true才能包含它,返回false才能将其过滤掉。

This should fix it这应该解决它

  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;
  }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM