首页 > 解决方案 > 如何制作用于过滤阵列的角管

问题描述

这是我要过滤的数组

[
    0: {id: 1, name: "Berlin",}
    1: {id: 2, name: "Proffesor",}
    2: {id: 4, name: "Oslo",}
    3: {id: 6, name: "Denver",}
]

这是过滤器的数组

 [6, 16, 2, 10, 24]

这是我的管道

export class ChatPipe implements PipeTransform {

  transform(user: Users[], args: any): any { //for users i use first array and for args I use second
    if (!user || !args) {
      return user;
      
  }
  
  let filteri = user.filter(users => users.id == args);
  
  return filteri;
};

}

我想使用另一个数组的值过滤第一个数组。谁能帮我?

标签: arraysangulartypescriptpipe

解决方案


改变这个:

// let filteri = user.filter(users => users.id == args);
// return filteri;
return (user || []).filter((item: any) => (args || []).includes(item.id));


推荐阅读