Essayer d'écrire un tube personnalisé pour masquer certains éléments.Angular 2 Filter Pipe
import { Pipe } from '@angular/core';
// Tell Angular2 we're creating a Pipe with TypeScript decorators
@Pipe({
name: 'showfilter'
})
export class ShowPipe {
transform(value) {
return value.filter(item => {
return item.visible == true;
});
}
}
HTML
<flights *ngFor="let item of items | showfilter">
</flights>
COMPOSANTE
import { ShowPipe } from '../pipes/show.pipe';
@Component({
selector: 'results',
templateUrl: 'app/templates/results.html',
pipes: [PaginatePipe, ShowPipe]
})
Mon article a la propriété de visible, qui peut être vrai ou faux.
Cependant, rien ne montre, y at-il quelque chose qui ne va pas avec mon tuyau?
Je pense que ma pipe fonctionne parce que quand je change le code de conduite à:
import { Pipe } from '@angular/core';
// Tell Angular2 we're creating a Pipe with TypeScript decorators
@Pipe({
name: 'showfilter'
})
export class ShowPipe {
transform(value) {
return value;
}
}
Il montrera tous les éléments.
Merci
avez-vous ajouté 'pipes: [ShowPipe]' au composant où vous utilisez le tube? Je ne vois rien de mal dans votre code. –
le code mis à jour ... – tony
que se passe-t-il si vous en faites un tuyau impur? '@Pipe ({ nom: 'showfilter', pur: false })' – PierreDuc