2014-04-10 1 views
0

현재 파이어베이스를 사용하는 기본 각형 응용 프로그램 및 데이터베이스를 작업 중입니다. 내 질문은 firebase에서 모든 데이터를로드 한 각도로 레코드를 필터링하는 방법입니다. 나는 Google에서 여러 가지 방법을 찾아 보곤했습니다. 마지막으로, 나는 OrderByPriority (Object to Array)를 사용하여 솔루션을 얻었습니다. 잘 작동하지만 문제는 기존 레코드를 편집 할 때 약간의 오류가 발생했습니다. OrderByPriority를 ​​사용할 때 레코드를 편집 할 때이 오류가 발생했습니다.필터 레코드 - 앵귤러 JS 및 파이어베이스

**Error:** Firebase.set failed: First argument contains undefined 

코드 :

data-ng-repeat="(key,person) in contactList | orderByPriority | filter:searchCategory 

내 앱 화면의 일부 - 내가 준 왼쪽 탐색 부분 만

Category 
All  (5) 
Family  (2) 
Friends (3) 

내 질문은,

  1. 내가 어떻게 필터링 할 데이터를 클릭 할 때 (예 : 전체, 가족, 친구 등) 선택에 따라 그에 따라 레코드를 표시합니까?
  2. 또한 '모든'범주의 레코드를 계산해야합니다.

귀하의 유리한 답변을 기다리고 있습니다. 진심으로 감사드립니다. 내가 cateogry을 클릭하면

답변

1
  1. 내가 어떻게 데이터를 필터링 할 (예를., 모든, 가족, 친구 등)하고 그에 따라 선택에 따라 레코드를 표시?

당신은 당신의 개인 기록은 category 필드를 갖고 싶어합니다. 카테고리를 클릭하면 다음 단순히 $ scope.searchCategory에 넣어 :

모든 ({{카운트 [ '모든']}}) 가족 ({{카운트 [ '가족']}})

  1. 또한 '전체'범주의 레코드를 계산해야합니다.

다른 사람의 합계가 아닌가요?

$scope.totalCount = function() { 
    var total = 0; 
    angular.forEach(counts, function(x) { total += x; }); 
    return total; 
} 
:
Total: {{ counts['family'] + counts['friends'] }} 

또는 컨트롤러의 방법