변수에서 각도 "| 필터" 식의 결과 배열을 얻으려면 어떻게 해야 합니까?
각도에서는 필터 식을 다음과 같이 쓸 수 있습니다.
<input type="text" ng-model="query">
<table>
<tr ng-repeat="phone in phones | filter: query">
<td>{{phone.vendor}}</td>
<td>{{phone.model}}</td>
</tr>
</table>
그러면 테이블이 갱신되고, 그 테이블이 갱신되어 그 전화기와 일치하는 전화기만 표시됩니다.query
에 입력하는 텍스트input
.
필터의 해당 결과 배열(예:[phone object]
변수(예를 들어 스코프 변수)에 현재 표시되어 있는s?
실제로 새 변수를 각도식으로 스코프에 할당할 수 있습니다.그래서 가장 간단한 해결책은<tr ng-repeat="phone in (filteredPhones = (phones | filter: query))">
. filtered Phones는 현재 스코프의 변수가 되었습니다.이 plnkr의 예를 참조해 주십시오.
컨트롤러 내에서는, 유저에 대한 변경 내용을 확인할 수 있습니다.query
텍스트와 동등한 Javascript를 사용합니다.{expression} | filter: {expression}
,어느 것이$filter('filter')
(이름을 가진 필터 사용)'filter'
군대에서$filter
(주입해야 합니다).
HTML 스니펫이 컨트롤러 MyController에 의해 제어된다고 가정해 보겠습니다.다음으로 변경할 수 있습니다.
myApp.controller("MyController", ["$scope", "$filter", function($scope, $filter) {
$scope.$watch('query', function(newVal, oldVal) {
console.log("new value in filter box:", newVal);
// this is the JS equivalent of "phones | filter: newVal"
$scope.filteredArray = $filter('filter')($scope.phones, newVal);
});
}]);
언제든지query
변경, 필터링된 어레이는 다음과 같이 사용할 수 있습니다.filteredArray
당신의 $190를 사용하시면filteredArray
네 스니펫의 표현으로 말이야
이 모든 내용은 http://docs.angularjs.org/api/ng.$filter 및 http://docs.angularjs.org/api/ng.filter:filter에 기재되어 있습니다.단, 첫 번째 링크의 매뉴얼은 너무 희박하기 때문에 코멘트에서두 번째 링크로밖에 얻을 수 없습니다.docs에 추가하려고 했는데, angular 클로닝과 docs 구축 후 브라우저에서 접속이 되지 않고 API 네비게이션이 아무런 유용한 오류 없이 사일런트하게 실패했기 때문에 포기했습니다.
언급URL : https://stackoverflow.com/questions/16050533/how-can-i-obtain-the-result-array-of-an-angular-filter-expression-in-a-varia
'source' 카테고리의 다른 글
PHP 루프를 사용하여 요소에 부트스트랩 행 및 적절한 열 번호 추가 (0) | 2023.04.04 |
---|---|
react js의 서비스 워커가 뭐죠? (0) | 2023.04.04 |
스프링 부트 HTML 및 JavaScript 추가 (0) | 2023.04.04 |
리액트 네이티브에서 이미지 폭을 100%로 설정하고 높이를 자동화하는 방법 (0) | 2023.04.04 |
jq를 사용하여 JSON에서 키 이름을 가져오는 방법 (0) | 2023.04.04 |