AngularJS에서 여러 값 필터링
AngularJS는 템플릿에 표시되는 데이터를 세분화하는 강력한 필터링 메커니즘을 제공합니다. 그러나 || 연산자는 동적 필터로 작업할 때 번거롭고 융통성이 없게 될 수 있습니다. 이 기사에서는 사용자 정의 필터를 사용하여 더욱 우아한 솔루션을 살펴봅니다.
여러 값 필터링을 위한 사용자 정의 필터
필터 표현식을 동적으로 조작하는 대신 이를 처리하는 사용자 정의 필터를 생성합니다. 논리. 사용자 정의 필터를 사용하면 자신만의 필터링 기능을 정의할 수 있습니다. 예는 다음과 같습니다.
<code class="javascript">angular.module('myFilters', []). filter('bygenre', function() { return function(movies, genres) { const matches = []; // Apply filtering logic here return matches; } });</code>
장르별 필터는 필터링할 개체 배열인 영화와 필터링할 장르 배열인 장르라는 두 가지 매개변수를 사용합니다. 이 함수는 영화 배열을 반복하면서 각 영화의 장르가 장르 배열의 장르와 일치하는지 확인하고 일치 항목을 일치 배열에 추가합니다. 마지막으로 일치 배열이 필터링된 결과로 반환됩니다.
필터 적용
템플릿에서 | 필터를 적용하려면 장르 파이프를 사용하세요.
<code class="html"><ul> <li ng-repeat="movie in movies | bygenre:genrefilters" >{{movie.title}}: {{movie.genre}} </li> </ul></code>
동적 필터 값
위의 HTML 코드에서 Genrefilters는 필터링할 장르를 지정하는 개체입니다. 컨트롤러에서 이 개체를 동적으로 업데이트하여 동적 필터링을 구현할 수 있습니다. 예를 들어, 다음 코드는 체크박스를 사용하여 장르필터 개체를 설정합니다.
<code class="html"><input type="checkbox" ng-model="genrefilters.action" /> Action <br> <input type="checkbox" ng-model="genrefilters.family" /> Family</code>
체크박스를 전환하면 장르필터 개체가 업데이트되고 장르별 필터가 자동으로 새 필터링 기준을 적용합니다.
이 접근 방식은 AngularJS의 여러 값을 기반으로 데이터를 필터링하는 깔끔하고 유연한 방법을 제공하므로 필터 기준이 변경될 수 있는 시나리오에 특히 적합합니다.
위 내용은 AngularJS의 여러 값을 기반으로 데이터를 효율적으로 필터링하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!