FirebaseListObservable
의 일부 데이터를 필터링하고 싶지만 수행 방법을 모르겠습니다. 일반적인 경우 here은 해결책이지만 실시간 데이터베이스를 사용하면 작동하지 않습니다. 도와주세요.Angular2 + 필터 파이어베이스 데이터
0
A
답변
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 검색 창에 포함 된 모든 것을 제공하지 않고 키 값과 정확히 일치하는 단어를 제공합니다. 데이터베이스하지만 내 경우에는 모든 컬렉션에서 검색하고 싶다. –
그런 경우이 검색 필터 만 사용하십시오. 예상 된 결과가 나옵니다. 하지만 그렇지 않다면 당신이 시도한 것은 무엇이든 그냥 여기에 게시하려합니다. –
이렇게 데이터베이스에서 데이터를 가져옵니다. * ngFor = "let pos of post | async"가 작동하지만 검색 표시 줄에서 일부 필터를 만들고 싶습니다. 필터 파이프를 추가했습니다. 이런 식으로 * ngFor = "let pos of post | async | searchFilter : search.value"하지만 작동하지 않습니다 –