2017-04-21 88 views
0

我想過濾來自FirebaseListObservable的一些數據,但我不知道如何執行它。對於正常情況here是解決方案,但使用實時數據庫它不起作用。請幫忙。Angular2 +過濾Firebase數據

+0

在這種情況下,只需使用該搜索過濾器。你會得到預期的結果。但是,如果不是那麼你試圖只是在這裏發佈 –

+0

我從數據庫中獲取我的數據像這樣* ngFor =「let post of post | async」它的工作原理,但我想通過搜索欄做一些過濾器我添加了過濾器管道像這樣* ngFor =「let post of post | async | searchFilter:search.value」,但它不起作用 –

回答

1

對整個列表進行查詢並在客戶端對其進行過濾是非常無效的。您需要使用參數進行查詢,因此您只會在訂閱中獲取所需的數據。示例如下,可以插入不同的查詢參數來查詢對象。有關查詢參數的更多信息可以在這裏找到:https://firebase.google.com/docs/reference/js/firebase.database.Query

export class AppComponent { 
    constructor(af: AngularFire) { 
    let listWithQuery = af.database.list('/items', { 
     query: { 
     equalTo: 'something', 
     orderByKey: true 
    } 
    }); 
    } 
} 
+0

equalTo不提供包含在搜索欄中的所有內容,它只是給出鍵值相同的確切單詞數據庫,但在我的情況下,我想要搜索所有的集合 –