2016-07-23 5 views
0

Ich habe Probleme bei diesem kleinen Projekt. Ich möchte auf meinem html zwei Eingaben machen und sie müssen einige Daten aus der Datenbank filtern. Ich habe geschafft, einen Filter zu machen (es funktioniert), aber ich weiß nicht, wie man einen zweiten Filter macht. (Es tut mir leid, dass ich keine englische Sprache in meinen Dateien benutzt habe und ich hoffe, dass es Sie nicht stört). Hier ist das, was ich habe:Angular2, mit zwei Eingängen zum Filtern von Daten

html-Datei

<div class="container"> 
    <form class="navbar-form navbar-left" role="search"> 
     <div class="form-group"> 
      <input type="text" class="form-control" placeholder="Broj Kreveta" [(ngModel)]="broj_kreveta"> 
      <input type="text" class="form-control" placeholder="Broj Kvadrata" [(ngModel)]="broj_kvadrata"> 
     </div> 
    </form> 
    <div class="col-lg-12"> 
     <br/>Rooms<br/> <br/> 
     <div *ngFor="#soba of sobe | SearchPipe:broj_kreveta"> 
      ID room: {{soba.id}} 
      <br/> 
      Category: {{soba.kategorija}} 
      <br/> 
      Room number: {{soba.broj_sobe}} 
      <br/> 
      Number of beds: {{soba.broj_kreveta}} 
      <br/> 
      sqm: {{soba.broj_kvadrata}} 
      <br/><br/> 
     </div> 
    </div> 
</div> 

search.ts

import {Pipe} from 'angular2/core'; 

@Pipe({ 
    name: 'SearchPipe' 
}) 

export class SearchPipe { 
    transform (value, [queryString]) { 
     if (value == null) { 
      return null; 
     } 
     console.log('transform'); 
     return value.filter(item=>item.broj_kreveta.toLowerCase().indexOf(queryString.toLowerCase()) !== -1); 
    } 
} 

Antwort

1

Sie können Stand Parameter in Ihrem Rohr haben:

{{ myData | myPipe: arg1:arg2:arg3... }} 

und die Rohr Definition :

export class MyPipe implements PipeTransform {  
    transform(value:any, arg1:any, arg2:any, arg3:any):any { 
    } 
Verwandte Themen