Componente principal
<app-search-bar (sender)="searchVideo($event)"></app-search-bar> <ng-container *ngFor="let video of videos | search: query; let i=index;"> ... </ng-container> <app-pagination (sender)="setStartEnd($event)"></app-pagination>Tubería personalizada
import { Pipe, PipeTransform } from '@angular/core'; @Pipe({ name: 'search' }) export class SearchPipe implements PipeTransform { transform(value: any, args: any): any { if(!value){ return null; } if(!args){ return value; } args = args.toLowerCase(); return value.filter((data: any) => { return JSON.stringify(data).toLowerCase().includes(args); }) } }Componente secundario (paginación de aplicaciones)
<div class="pagination" *ngIf="videos.length > 3"> ... </div>Necesito obtener los datos filtrados que devolvió Custom Pipe para que con la ayuda de eso pueda manejar la cantidad de páginas en el componente de paginación.
Posiblemente no use una tubería en este caso. Mueva esa lógica al componente principal y comparta el resultado con cualquier componente de la plantilla que lo necesite.
O también podría usar la tubería dos veces (aunque para mí es lógica que tendría en la clase principal, no una tubería)