Wie filter FirebaseListObservable auf der client-Seite?

Ich bin mit AngularFire2 innerhalb einer Eckigen web-app. Aufgrund der query-Einschränkungen der FB, ich kann nicht form einer Abfrage, liefert genau die Informationen, die ich brauche (zumindest nicht ohne größere änderungen an meinem schema).

So, ich möchte, um eine weitere client-Seite filter-Kriterien innerhalb von javascript (typescript). Wie mache ich das? Kann ich irgendwie einen filter hinzufügen-Funktion, um die beobachtbaren? Unten ist ein fragment, das veranschaulicht, was ich Tue.

In das HTML-Template für die Komponente, ich habe so etwas wie dies weiter unten. Die "jobs" - Variablen in der html-fragment ist eine FirebaseListObservable.

<tr *ngFor="let job of jobs | async"> 
  .. fill in the table rows

Die Komponente-code sieht wie folgt aus:

   //in the member declaration of the class
   jobs : FirebaseListObservable<Job[]>;

   ...
   //Notice in ngOnInit(), I'm filtering the jobs list using the the
   //Firebase criteria. But I want to filter on an additional field. 
   //Firebase allows only single field criteria, so I'm looking for 
   //a way to apply an additional client-side filter to jobs to eliminate
   //some additional records. 

   ngOnInit(){
      this.jobs = this.af.database.list("/jobs/", {query: {orderByChild : "companyKey", equalTo:someKey}})
   }

Gibt es eine Möglichkeit, eine filter-Komponente auf dieser.Arbeitsplätze", so dass ich eine lokale (client-Seite) filter?

InformationsquelleAutor Rob Gorman | 2016-09-17
Schreibe einen Kommentar