Angular Web アプリ内で AngularFire2 を使用しています。Firebase のクエリの制限により、必要なデータを正確に提供するクエリを作成することはできません (少なくとも、スキーマに大幅な変更を加える必要はありません)。
そのため、javascript (typescript) 内で追加のクライアント側フィルター条件を適用したいと考えています。どうすればいいですか?どうにかしてオブザーバブルにフィルター関数を追加できますか? 以下は、私がやっていることを示す断片です。
コンポーネントの HTML テンプレートには、次のようなものがあります。HTML フラグメントの「jobs」変数は、FirebaseListObservable です。
<tr *ngFor="let job of jobs | async">
.. fill in the table rows
コンポーネント コードは次のようになります。
// 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}})
}
ローカル (クライアント側) フィルターを適用できるように、"this.jobs" にフィルター コンポーネントを適用する方法はありますか?