2013-08-21 3 views
3

필터를 사용하여 ng-repeat를 사용하고 있습니다. 검색을 수행하려고 할 때 필터를 사용하고 아무 것도 반환하지 않으므로 나머지 레코드 만 검색 할 수 있습니다. ng 반복의.angular js ng-repeat : 필터 반환 크기

NG 반복 = | :

TBL 길이 125 (i가 원활하게 실행하기 위해 테이블에 가장 주위에 이걸 발견)는 "TBL에서의 필터 검색"내가 말할 수 있습니다 1000 페이지의 레코드를 가지고 페이지 매김을 사용하여 변경하십시오. 검색 필터가 0을 반환하면 나머지 레코드를 검색 할 수 있기를 원하지만 검색에서 아무 것도 반환하지 않는 경우를 알 수 있어야합니다.

Filtered by sort by group and update schedule. total of 4 possibilities

+0

이 답변을 시도하십시오 : http://stackoverflow.com/questions/14615495/angularjs-placeholder-for-empty-result-from-filter#answer-14656659 –

+0

tbl은 1000 개의 레코드를 포함해야하며 limitTo를 구현할 수 있어야합니다. 페이지 매김을 사용하면 필터가 1 페이지가 아닌 전체 목록에 적용됩니다. – zsong

+0

나는 ng-show를 작동 시키지만 컨트롤러 쪽에서 이것을 인식해야합니다. 1000 개의 레코드가 이미 필터되고 있습니다. 나는 이것을 할 수 있었다. 비록 레코드를 여러 배열로 바꿔야 만했을 것이다. – willJk

답변

0

나는 사용자 정의 필터를 작성합니다. 그리고 이와 비슷한 것을하십시오.

.filter('filterFunction', function() { 

    return function (objects) { 

    var filtered_list = []; 

    var filterFunction = function(array) { 
     for (var i = 0; i < array.length; i++) { 
     if (something) filtered_list.push(array[i]); 
     } 
    } 

    filterFunction(objects); 
    while (filtered_list.length === 0) { 
     objects = ... get new list ... 
     filterFunction(objects); 
    } 

    return filtered_list; 

    } 
}); 
+0

이것은 여러 프로젝트에서 이것을 사용할 것이므로 특히 중요하다. 감사! – willJk

3

컨트롤러에서 디스플레이 로직을 유지하는 것이 가장 좋습니다. 동적 길이를 보여줍니다 그

<div> 
    <tablestuff></tablestuff> 
    {{(tbl | filter:search).length}} 
</div> 

: 당신이 인 경우에 따라서

결과를 추적하기는 것처럼 보이는 것을 구현하는

{{(tbl | filter:search).length}} 

그래서 HTML이 뭔가를 넣어 필터링 된 결과 중

+0

정확히 내가 찾던 해결책이었습니다. 완전한. – Mariusz