Búsqueda de sitios web

javascript - Filtrar múltiples valores usando ngx-filter-pipe


Estoy tratando de filtrar un arreglo usando ngx-filter-pipe. He logrado filtrar si tiene una condición de valor único. No sé cómo filtrar cualquier valor en un arreglo. Por favor, ayúdame.

Angular

<input type="text" id="search"  class="form-control" name="search" [(ngModel)]="userFilter.name"> 
<tr *ngFor="let data of datas | filterBy: userFilter">
  <td>{{data.name}}</td>
  <td>{{data.age}}</td>
  <td>{{data.country}}</td>
</tr>

TS

userFilter: any = { name: '' };

Datos

datas:[
  { name:"abc", age:17, country:"US" },
  { name:"xyz", age:25, country:"India" }
]

¿Cómo debería manejar mi ngModel si pongo múltiples parámetros en userFilter?

Stackblitz: Ejemplo Similar

Respuesta #1

El problema está con tu filtro.

El paquete espera que el filtro sea como se indica a continuación:

const filter = {
  name: {
    $or: ['abc']
  },
  age: {
    $or: ['17']
  }
  ...
};

Según la documentación

$or expects an Array.