ng-Repeat와 jQuery 저글링
ng-repeat로 작업할 때 jQuery를 사용하여 DOM을 조작해야 하는 상황이 발생할 수 있습니다. ng-repeat 요소가 채워진 후. 그러나 단순히 $(document).ready() 또는 $scope.$on('$viewContentLoaded', myFunc)에만 의존하는 것만으로는 충분하지 않을 수 있습니다.
이 문제를 해결하려면 지시어 활용을 고려하세요. ng-repeat 완료와 특별히 연결된 이벤트와 달리 지시문을 사용하면 ng-repeat 루프 내의 특정 조건에 따라 작업을 수행할 수 있습니다.
ng가 렌더링한 전체 테이블에 스타일을 적용하거나 이벤트를 추가하는 것이 목표인 경우 -repeat를 사용하면 모든 ng-repeat 요소를 포함하는 지시문을 만들 수 있습니다. 또는 각 요소를 개별적으로 처리해야 하는 경우 ng-repeat 내에서 지시문을 사용하여 각 요소가 생성된 후 실행되도록 할 수 있습니다.
또한 ng-repeat는 $index, $와 같은 속성을 제공합니다. 이벤트 트리거를 용이하게 할 수 있는 first, $middle 및 $last입니다. 이러한 속성은 테두리 추가 또는 마지막 요소 완료 알림과 같은 특정 작업을 수행하는 데 활용될 수 있습니다.
다음 HTML 코드를 고려하세요.
<div ng-controller="Ctrl" my-main-directive> <div ng-repeat="thing in things" my-repeat-directive> thing {{thing}} </div> </div>
요소 스타일을 처리하려면 및 기타 작업을 수행하려면 다음 지시어를 생성할 수 있습니다.
angular.module('myApp', []) .directive('myRepeatDirective', function() { return function(scope, element, attrs) { angular.element(element).css('color', 'blue'); if (scope.$last) { window.alert("im the last!"); } }; }) .directive('myMainDirective', function() { return function(scope, element, attrs) { angular.element(element).css('border', '5px solid red'); }; });
이 솔루션은 ng-repeat 내에서 지시어를 사용하여 다음을 수행하는 방법을 보여줍니다. 각 요소가 생성된 후 또는 루프 내 위치에 따라 특정 작업을 실행합니다.
위 내용은 AngularJS에서 ng-repeat와 함께 jQuery를 효과적으로 사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!